TauLib · API Book I

TauLib.BookI.Polarity.OmegaRing

TauLib.Polarity.OmegaRing

Stagewise ring operations on omega-tails with compatibility preservation.

Registry Cross-References

  • [I.D28] Boundary Local Ring — mk_omega_tail_add, mk_omega_tail_mul

  • [I.D25] Omega-Tail — Compatible_add, Compatible_mul

Ground Truth Sources

  • chunk_0243_M002286: Boundary ring with levelwise addition/multiplication

  • chunk_0314_M002691: Stagewise ring operations preserve compatibility

Mathematical Content

The boundary ring ℤ̂_τ = lim Z/M_kZ carries componentwise ring operations:

  • Addition: (x_k) + (y_k) = ((x_k + y_k) mod M_k)

  • Multiplication: (x_k) · (y_k) = ((x_k · y_k) mod M_k)

Both operations preserve tower compatibility (the key structural theorem). The proofs use: reduction_compat, Nat.add_mod / Nat.mul_mod, mod_mod_of_dvd.


Tau.Polarity.mk_omega_tail_add

source def Tau.Polarity.mk_omega_tail_add (n1 n2 d : Denotation.TauIdx) :OmegaTail

Omega-tail addition via canonical embedding. Equations

  • Tau.Polarity.mk_omega_tail_add n1 n2 d = { depth := d, components := Tau.Polarity.omega_add_list✝ n1 n2 d, depth_eq := ⋯ } Instances For

Tau.Polarity.omega_add_eq_reduce

source **theorem Tau.Polarity.omega_add_eq_reduce (n1 n2 d i : Nat)

(hi : i < d) :(Tau.Polarity.omega_add_list✝ n1 n2 d).getD i 0 = reduce (n1 + n2) (i + 1)**

Bridge: componentwise addition equals global addition under reduce.


Tau.Polarity.Compatible_add

source theorem Tau.Polarity.Compatible_add (n1 n2 d : Denotation.TauIdx) :Compatible (mk_omega_tail_add n1 n2 d)

Componentwise addition of canonical tails produces compatible towers.


Tau.Polarity.mk_omega_tail_mul

source def Tau.Polarity.mk_omega_tail_mul (n1 n2 d : Denotation.TauIdx) :OmegaTail

Omega-tail multiplication via canonical embedding. Equations

  • Tau.Polarity.mk_omega_tail_mul n1 n2 d = { depth := d, components := Tau.Polarity.omega_mul_list✝ n1 n2 d, depth_eq := ⋯ } Instances For

Tau.Polarity.omega_mul_eq_reduce

source **theorem Tau.Polarity.omega_mul_eq_reduce (n1 n2 d i : Nat)

(hi : i < d) :(Tau.Polarity.omega_mul_list✝ n1 n2 d).getD i 0 = reduce (n1 * n2) (i + 1)**

Bridge: componentwise multiplication equals global multiplication under reduce.


Tau.Polarity.Compatible_mul

source theorem Tau.Polarity.Compatible_mul (n1 n2 d : Denotation.TauIdx) :Compatible (mk_omega_tail_mul n1 n2 d)

Componentwise multiplication of canonical tails produces compatible towers.


Tau.Polarity.OmegaTail.add

source **def Tau.Polarity.OmegaTail.add (t1 t2 : OmegaTail)

(_hd : t1.depth = t2.depth) :OmegaTail**

General componentwise addition of two omega-tails of equal depth. Equations

  • One or more equations did not get rendered due to their size. Instances For

Tau.Polarity.Compatible_add_general

source **theorem Tau.Polarity.Compatible_add_general (t1 t2 : OmegaTail)

(hd : t1.depth = t2.depth)

(h1 : Compatible t1)

(h2 : Compatible t2) :Compatible (t1.add t2 hd)**

General compatibility preservation under addition.


Tau.Polarity.OmegaTail.mul

source **def Tau.Polarity.OmegaTail.mul (t1 t2 : OmegaTail)

(_hd : t1.depth = t2.depth) :OmegaTail**

General componentwise multiplication of two omega-tails of equal depth. Equations

  • One or more equations did not get rendered due to their size. Instances For

Tau.Polarity.Compatible_mul_general

source **theorem Tau.Polarity.Compatible_mul_general (t1 t2 : OmegaTail)

(hd : t1.depth = t2.depth)

(h1 : Compatible t1)

(h2 : Compatible t2) :Compatible (t1.mul t2 hd)**

General compatibility preservation under multiplication.


Tau.Polarity.mk_omega_zero

source def Tau.Polarity.mk_omega_zero (d : Denotation.TauIdx) :OmegaTail

Zero omega-tail: all components are 0 mod M_k = 0. Equations

  • Tau.Polarity.mk_omega_zero d = Tau.Polarity.mk_omega_tail 0 d Instances For

Tau.Polarity.mk_omega_one

source def Tau.Polarity.mk_omega_one (d : Denotation.TauIdx) :OmegaTail

One omega-tail: all components are 1 mod M_k = 1 (for k ≥ 1). Equations

  • Tau.Polarity.mk_omega_one d = Tau.Polarity.mk_omega_tail 1 d Instances For

Tau.Polarity.omega_zero_compat

source theorem Tau.Polarity.omega_zero_compat (d : Denotation.TauIdx) :Compatible (mk_omega_zero d)

Zero is compatible.


Tau.Polarity.omega_one_compat

source theorem Tau.Polarity.omega_one_compat (d : Denotation.TauIdx) :Compatible (mk_omega_one d)

One is compatible.


Tau.Polarity.omega_add_components_eq

source theorem Tau.Polarity.omega_add_components_eq (n1 n2 d : Denotation.TauIdx) :(mk_omega_tail_add n1 n2 d).components = (mk_omega_tail (n1 + n2) d).components

mk_omega_tail_add produces the same components as mk_omega_tail of the sum. This is the master bridge: componentwise addition = global addition.


Tau.Polarity.omega_mul_components_eq

source theorem Tau.Polarity.omega_mul_components_eq (n1 n2 d : Denotation.TauIdx) :(mk_omega_tail_mul n1 n2 d).components = (mk_omega_tail (n1 * n2) d).components

mk_omega_tail_mul produces the same components as mk_omega_tail of the product. This is the master bridge: componentwise multiplication = global multiplication.


Tau.Polarity.omega_add_zero

source theorem Tau.Polarity.omega_add_zero (n d : Denotation.TauIdx) :(mk_omega_tail_add n 0 d).components = (mk_omega_tail n d).components

Additive identity: n + 0 = n (on omega-tails).


Tau.Polarity.omega_mul_one

source theorem Tau.Polarity.omega_mul_one (n d : Denotation.TauIdx) :(mk_omega_tail_mul n 1 d).components = (mk_omega_tail n d).components

Multiplicative identity: n * 1 = n (on omega-tails).


Tau.Polarity.omega_add_comm

source theorem Tau.Polarity.omega_add_comm (n1 n2 d : Denotation.TauIdx) :(mk_omega_tail_add n1 n2 d).components = (mk_omega_tail_add n2 n1 d).components

Additive commutativity: n + m = m + n (on omega-tails).


Tau.Polarity.omega_mul_comm

source theorem Tau.Polarity.omega_mul_comm (n1 n2 d : Denotation.TauIdx) :(mk_omega_tail_mul n1 n2 d).components = (mk_omega_tail_mul n2 n1 d).components

Multiplicative commutativity: n * m = m * n (on omega-tails).


Tau.Polarity.omega_add_assoc

source theorem Tau.Polarity.omega_add_assoc (n1 n2 n3 d : Denotation.TauIdx) :(mk_omega_tail_add (n1 + n2) n3 d).components = (mk_omega_tail_add n1 (n2 + n3) d).components

Additive associativity: (a + b) + c = a + (b + c) (on omega-tails).


Tau.Polarity.omega_mul_assoc

source theorem Tau.Polarity.omega_mul_assoc (n1 n2 n3 d : Denotation.TauIdx) :(mk_omega_tail_mul (n1 * n2) n3 d).components = (mk_omega_tail_mul n1 (n2 * n3) d).components

Multiplicative associativity: (a * b) * c = a * (b * c) (on omega-tails).


Tau.Polarity.omega_left_distrib

source theorem Tau.Polarity.omega_left_distrib (n1 n2 n3 d : Denotation.TauIdx) :(mk_omega_tail_mul n1 (n2 + n3) d).components = (mk_omega_tail_add (n1 * n2) (n1 * n3) d).components

Distributivity: a * (b + c) = ab + ac (on omega-tails).


Tau.Polarity.add_zero_check

source def Tau.Polarity.add_zero_check (n d : Denotation.TauIdx) :Bool

Check: n + 0 = n (additive identity). Equations

  • Tau.Polarity.add_zero_check n d = ((Tau.Polarity.mk_omega_tail_add n 0 d).components == (Tau.Polarity.mk_omega_tail n d).components) Instances For

Tau.Polarity.mul_one_check

source def Tau.Polarity.mul_one_check (n d : Denotation.TauIdx) :Bool

Check: n * 1 = n (multiplicative identity). Equations

  • Tau.Polarity.mul_one_check n d = ((Tau.Polarity.mk_omega_tail_mul n 1 d).components == (Tau.Polarity.mk_omega_tail n d).components) Instances For

Tau.Polarity.add_comm_check

source def Tau.Polarity.add_comm_check (n1 n2 d : Denotation.TauIdx) :Bool

Check: n + m = m + n (additive commutativity). Equations

  • Tau.Polarity.add_comm_check n1 n2 d = ((Tau.Polarity.mk_omega_tail_add n1 n2 d).components == (Tau.Polarity.mk_omega_tail_add n2 n1 d).components) Instances For

Tau.Polarity.mul_comm_check

source def Tau.Polarity.mul_comm_check (n1 n2 d : Denotation.TauIdx) :Bool

Check: n * m = m * n (multiplicative commutativity). Equations

  • Tau.Polarity.mul_comm_check n1 n2 d = ((Tau.Polarity.mk_omega_tail_mul n1 n2 d).components == (Tau.Polarity.mk_omega_tail_mul n2 n1 d).components) Instances For