TauLib · API Book I

TauLib.BookI.Boundary.SplitComplex

TauLib.Boundary.SplitComplex

Full ring axioms for SplitComplex and SectorPair, plus to_sectors bijectivity and zero divisor characterization.

Registry Cross-References

  • [I.D27] Bipolar Spectral Algebra — Ring axiom suite for SplitComplex, SectorPair

  • [I.T10] Split-Complex Forced — Zero divisor characterization

Ground Truth Sources

  • chunk_0228_M002194: Split-complex ring, sector decomposition ring isomorphism

  • chunk_0310_M002679: Bipolar partition, zero divisors from sector coordinates

Mathematical Content

The split-complex algebra H = Z[j] with j^2 = +1 is a commutative ring with zero divisors. The sector decomposition phi: H -> Z x Z via (a+bj) -> (a+b, a-b) is a ring isomorphism. Zero divisors in H are exactly elements where one sector coordinate vanishes: z is a zero divisor iff z.re + z.im = 0 or z.re - z.im = 0.


Tau.Boundary.SplitComplex.ext

source **theorem Tau.Boundary.SplitComplex.ext {a b : Polarity.SplitComplex}

(hre : a.re = b.re)

(him : a.im = b.im) :a = b**


Tau.Boundary.SplitComplex.ext_iff

source theorem Tau.Boundary.SplitComplex.ext_iff {a b : Polarity.SplitComplex} :a = b ↔ a.re = b.re ∧ a.im = b.im


Tau.Boundary.sc_add_comm

source theorem Tau.Boundary.sc_add_comm (a b : Polarity.SplitComplex) :a.add b = b.add a

Additive commutativity: a + b = b + a.


Tau.Boundary.sc_add_assoc

source theorem Tau.Boundary.sc_add_assoc (a b c : Polarity.SplitComplex) :(a.add b).add c = a.add (b.add c)

Additive associativity: (a + b) + c = a + (b + c).


Tau.Boundary.sc_add_zero

source theorem Tau.Boundary.sc_add_zero (a : Polarity.SplitComplex) :a.add Polarity.SplitComplex.zero = a

Additive identity: a + 0 = a.


Tau.Boundary.sc_add_neg

source theorem Tau.Boundary.sc_add_neg (a : Polarity.SplitComplex) :a.add a.neg = Polarity.SplitComplex.zero

Additive inverse: a + (-a) = 0.


Tau.Boundary.sc_mul_comm

source theorem Tau.Boundary.sc_mul_comm (a b : Polarity.SplitComplex) :a.mul b = b.mul a

Multiplicative commutativity: a * b = b * a.


Tau.Boundary.sc_mul_assoc

source theorem Tau.Boundary.sc_mul_assoc (a b c : Polarity.SplitComplex) :(a.mul b).mul c = a.mul (b.mul c)

Multiplicative associativity: (a * b) * c = a * (b * c).


Tau.Boundary.sc_mul_one

source theorem Tau.Boundary.sc_mul_one (a : Polarity.SplitComplex) :a.mul Polarity.SplitComplex.one = a

Multiplicative identity: a * 1 = a.


Tau.Boundary.sc_left_distrib

source theorem Tau.Boundary.sc_left_distrib (a b c : Polarity.SplitComplex) :a.mul (b.add c) = (a.mul b).add (a.mul c)

Left distributivity: a * (b + c) = ab + ac.


Tau.Boundary.sc_ring_axioms

source theorem Tau.Boundary.sc_ring_axioms :(∀ (a b : Polarity.SplitComplex), a.add b = b.add a) ∧ (∀ (a b c : Polarity.SplitComplex), (a.add b).add c = a.add (b.add c)) ∧ (∀ (a : Polarity.SplitComplex), a.add Polarity.SplitComplex.zero = a) ∧ (∀ (a : Polarity.SplitComplex), a.add a.neg = Polarity.SplitComplex.zero) ∧ (∀ (a b : Polarity.SplitComplex), a.mul b = b.mul a) ∧ (∀ (a b c : Polarity.SplitComplex), (a.mul b).mul c = a.mul (b.mul c)) ∧ (∀ (a : Polarity.SplitComplex), a.mul Polarity.SplitComplex.one = a) ∧ ∀ (a b c : Polarity.SplitComplex), a.mul (b.add c) = (a.mul b).add (a.mul c)

Full SplitComplex ring axiom collection.


Tau.Boundary.SectorPair.ext

source **theorem Tau.Boundary.SectorPair.ext {a b : Polarity.SectorPair}

(hb : a.b_sector = b.b_sector)

(hc : a.c_sector = b.c_sector) :a = b**


Tau.Boundary.SectorPair.ext_iff

source theorem Tau.Boundary.SectorPair.ext_iff {a b : Polarity.SectorPair} :a = b ↔ a.b_sector = b.b_sector ∧ a.c_sector = b.c_sector


Tau.Boundary.SectorPair.zero

source def Tau.Boundary.SectorPair.zero :Polarity.SectorPair

SectorPair zero. Equations

  • Tau.Boundary.SectorPair.zero = { b_sector := 0, c_sector := 0 } Instances For

Tau.Boundary.SectorPair.one

source def Tau.Boundary.SectorPair.one :Polarity.SectorPair

SectorPair one (the multiplicative identity). Equations

  • Tau.Boundary.SectorPair.one = { b_sector := 1, c_sector := 1 } Instances For

Tau.Boundary.SectorPair.neg

source def Tau.Boundary.SectorPair.neg (a : Polarity.SectorPair) :Polarity.SectorPair

SectorPair negation. Equations

  • Tau.Boundary.SectorPair.neg a = { b_sector := -a.b_sector, c_sector := -a.c_sector } Instances For

Tau.Boundary.sp_add_comm

source theorem Tau.Boundary.sp_add_comm (a b : Polarity.SectorPair) :a.add b = b.add a

Additive commutativity.


Tau.Boundary.sp_add_assoc

source theorem Tau.Boundary.sp_add_assoc (a b c : Polarity.SectorPair) :(a.add b).add c = a.add (b.add c)

Additive associativity.


Tau.Boundary.sp_add_zero

source theorem Tau.Boundary.sp_add_zero (a : Polarity.SectorPair) :a.add SectorPair.zero = a

Additive identity.


Tau.Boundary.sp_add_neg

source theorem Tau.Boundary.sp_add_neg (a : Polarity.SectorPair) :a.add (SectorPair.neg a) = SectorPair.zero

Additive inverse.


Tau.Boundary.sp_mul_comm

source theorem Tau.Boundary.sp_mul_comm (a b : Polarity.SectorPair) :a.mul b = b.mul a

Multiplicative commutativity.


Tau.Boundary.sp_mul_assoc

source theorem Tau.Boundary.sp_mul_assoc (a b c : Polarity.SectorPair) :(a.mul b).mul c = a.mul (b.mul c)

Multiplicative associativity.


Tau.Boundary.sp_mul_one

source theorem Tau.Boundary.sp_mul_one (a : Polarity.SectorPair) :a.mul SectorPair.one = a

Multiplicative identity.


Tau.Boundary.sp_left_distrib

source theorem Tau.Boundary.sp_left_distrib (a b c : Polarity.SectorPair) :a.mul (b.add c) = (a.mul b).add (a.mul c)

Left distributivity: a * (b + c) = ab + ac.


Tau.Boundary.sp_ring_axioms

source theorem Tau.Boundary.sp_ring_axioms :(∀ (a b : Polarity.SectorPair), a.add b = b.add a) ∧ (∀ (a b c : Polarity.SectorPair), (a.add b).add c = a.add (b.add c)) ∧ (∀ (a : Polarity.SectorPair), a.add SectorPair.zero = a) ∧ (∀ (a : Polarity.SectorPair), a.add (SectorPair.neg a) = SectorPair.zero) ∧ (∀ (a b : Polarity.SectorPair), a.mul b = b.mul a) ∧ (∀ (a b c : Polarity.SectorPair), (a.mul b).mul c = a.mul (b.mul c)) ∧ (∀ (a : Polarity.SectorPair), a.mul SectorPair.one = a) ∧ ∀ (a b c : Polarity.SectorPair), a.mul (b.add c) = (a.mul b).add (a.mul c)

Full SectorPair ring axiom collection.


Tau.Boundary.from_sectors

source def Tau.Boundary.from_sectors (s : Polarity.SectorPair) :Polarity.SplitComplex

Inverse of to_sectors: recover SplitComplex from SectorPair. Given (u, v) = (a+b, a-b), recover a = (u+v)/2, b = (u-v)/2. Over integers, this requires u+v and u-v to be even, which is always the case since u and v have the same parity. We work formally: from_sectors(to_sectors(z)) = z is proved directly. Equations

  • Tau.Boundary.from_sectors s = { re := (s.b_sector + s.c_sector) / 2, im := (s.b_sector - s.c_sector) / 2 } Instances For

Tau.Boundary.to_sectors_injective

source **theorem Tau.Boundary.to_sectors_injective (a b : Polarity.SplitComplex)

(h : Polarity.to_sectors a = Polarity.to_sectors b) :a = b**

to_sectors is injective: to_sectors a = to_sectors b implies a = b.


Tau.Boundary.from_sectors_left_inv

source theorem Tau.Boundary.from_sectors_left_inv (z : Polarity.SplitComplex) :from_sectors (Polarity.to_sectors z) = z

from_sectors is a left inverse of to_sectors (over SplitComplex).


Tau.Boundary.to_sectors_surj_on_image

source **theorem Tau.Boundary.to_sectors_surj_on_image (s : Polarity.SectorPair)

(h : (s.b_sector + s.c_sector) % 2 = 0) :Polarity.to_sectors (from_sectors s) = s**

to_sectors composed with from_sectors is identity on even-parity sector pairs. Note: over Z, to_sectors only reaches even-sum pairs (u+v always even).


Tau.Boundary.to_sectors_parity

source theorem Tau.Boundary.to_sectors_parity (z : Polarity.SplitComplex) :((Polarity.to_sectors z).b_sector + (Polarity.to_sectors z).c_sector) % 2 = 0

The image of to_sectors consists of pairs with equal parity.


Tau.Boundary.to_sectors_zero

source theorem Tau.Boundary.to_sectors_zero :Polarity.to_sectors Polarity.SplitComplex.zero = SectorPair.zero

to_sectors preserves zero.


Tau.Boundary.to_sectors_one

source theorem Tau.Boundary.to_sectors_one :Polarity.to_sectors Polarity.SplitComplex.one = SectorPair.one

to_sectors preserves one.


Tau.Boundary.to_sectors_neg

source theorem Tau.Boundary.to_sectors_neg (z : Polarity.SplitComplex) :Polarity.to_sectors z.neg = SectorPair.neg (Polarity.to_sectors z)

to_sectors preserves negation.


Tau.Boundary.zero_divisor_sector

source **theorem Tau.Boundary.zero_divisor_sector (z w : Polarity.SplitComplex)

(h : z.mul w = Polarity.SplitComplex.zero) :(z.re + z.im) * (w.re + w.im) = 0 ∧ (z.re - z.im) * (w.re - w.im) = 0**

A split-complex number z is a zero divisor iff one sector coordinate vanishes. Forward: if z * w = 0 with w nonzero, then one sector of z is zero. We prove: z * w = 0 implies (z.re+z.im)(w.re+w.im) = 0 AND (z.re-z.im)(w.re-w.im) = 0. So if w has both sectors nonzero, both sectors of z must be zero (and z = 0). Nontrivial zero divisors have exactly one sector vanishing.


Tau.Boundary.zero_divisor_witness_b

source **theorem Tau.Boundary.zero_divisor_witness_b (z : Polarity.SplitComplex)

(h : z.re + z.im = 0) :z.mul { re := 1, im := 1 } = Polarity.SplitComplex.zero**

Converse: if one sector of z is zero, z is a zero divisor (witness provided explicitly).


Tau.Boundary.zero_divisor_witness_c

source **theorem Tau.Boundary.zero_divisor_witness_c (z : Polarity.SplitComplex)

(h : z.re - z.im = 0) :z.mul { re := 1, im := -1 } = Polarity.SplitComplex.zero**


Tau.Boundary.zero_divisors_iff

source **theorem Tau.Boundary.zero_divisors_iff (z : Polarity.SplitComplex)

(hz : z ≠ Polarity.SplitComplex.zero) :(∃ (w : Polarity.SplitComplex), w ≠ Polarity.SplitComplex.zero ∧ z.mul w = Polarity.SplitComplex.zero) ↔ z.re + z.im = 0 ∨ z.re - z.im = 0**

The zero divisors of SplitComplex are exactly the elements with a vanishing sector.