-
Notifications
You must be signed in to change notification settings - Fork 2
Examples
Olivier Laurent edited this page Jan 27, 2022
·
38 revisions
- A⊗B ⊢ B⊗A ≈ A⅋B ⊢ B⅋A (commutativity)
- (A⊗B)⊗C ⊢ A⊗(B⊗C) ≈ A⅋(B⅋C) ⊢ (A⅋B)⅋C ≈ A⊸B⊸C ⊢ A⊗B⊸C (associativity)
- A⊗(B⊗C) ⊢ (A⊗B)⊗C ≈ (A⅋B)⅋C ⊢ A⅋(B⅋C) ≈ A⊗B⊸C ⊢ A⊸B⊸C (associativity)
- A ⊢ A⊗1 ≈ A⅋⊥ ⊢ A ≈ 1⊸A ⊢ A (unit)
- A⊗1 ⊢ A ≈ A ⊢ A⅋⊥ ≈ A ⊢ 1⊸A (unit)
- (A⊸B)⊗C ⊢ A⊸(B⊗C) ≈ (A⅋B)⊗C ⊢ A⅋(B⊗C) (linear distributivity)
- A⊸A ≈ A⊥⅋A (identity)
- A⊸B, B⊸C ⊢ A⊸C (composition)
- A⊗(A⊸B) ⊢ B (evaluation)
- A&B ⊢ B&A ≈ A⊕B ⊢ B⊕A (commutativity)
- (A&B)&C ⊢ A&(B&C) ≈ A⊕(B⊕C) ⊢ (A⊕B)⊕C (associativity)
- A&(B&C) ⊢ (A&B)&C ≈ (A⊕B)⊕C ⊢ A⊕(B⊕C) (associativity)
- A ⊢ A&⊤ ≈ A⊕0 ⊢ A (unit)
- A&⊤ ⊢ A ≈ A ⊢ A⊕0 (unit)
- A ⊢ A&A ≈ A⊕A ⊢ A (idempotency)
- A&B ⊢ A ≈ A ⊢ A⊕B (projection / injection)
- A ⊢ ⊤ ≈ 0 ⊢ A (terminal / initial)
- A⊕(B&C) ⊢ (A⊕B)&(A⊕C) ≈ (A&B)⊕(A&C) ⊢ A&(B⊕C)
- !A ⊢ A ≈ A ⊢ ?A (dereliction)
- !A ⊢ !!A ≈ ??A ⊢ ?A (digging)
- !A ⊢ !?!A ≈ ?!?A ⊢ ?A
- !?!?A ⊢ !?A ≈ ?!A ⊢ ?!?!A
- !?!A ⊢ !?A ≈ ?!A ⊢ ?!?A
- !?!A ⊢ ?!A ≈ !?A ⊢ ?!?A
- A⊗(B⊕C) ⊢ (A⊗B)⊕(A⊗C) ≈ (A⅋B)&(A⅋C) ⊢ A⅋(B&C) ≈ (A⊸B)&(A⊸C) ⊢ A⊸(B&C) ≈ (A⊸C)&(B⊸C) ⊢ A⊕B⊸C (distributivity)
- (A⊗B)⊕(A⊗C) ⊢ A⊗(B⊕C) ≈ A⅋(B&C) ⊢ (A⅋B)&(A⅋C) ≈ A⊸(B&C) ⊢ (A⊸B)&(A⊸C) ≈ A⊕B⊸C ⊢ (A⊸C)&(B⊸C) (distributivity)
- A⊗0 ⊢ 0 ≈ ⊤ ⊢ A⅋⊤ ≈ ⊤ ⊢ A⊸⊤ ≈ ⊤ ⊢ 0⊸A (absorption)
- 0 ⊢ A⊗0 ≈ A⅋⊤ ⊢ ⊤ ≈ A⊸⊤ ⊢ ⊤ ≈ 0⊸A ⊢ ⊤ (absorption)
- A⊗(B&C) ⊢ (A⊗B)&(A⊗C) ≈ (A⅋B)⊕(A⅋C) ⊢ A⅋(B⊕C)
- !A ⊢ !A⊗!A ≈ ?A⅋?A ⊢ ?A (contraction)
- !A ⊢ 1 ≈ ⊥ ⊢ ?A (weakening)
- !(A⊸B) ⊢ !A⊸!B (promotion)
- !A⊗!B ⊢ !(A⊗B) ≈ ?(A⅋B) ⊢ ?A⅋?B (monoidality)
- 1 ⊢ !1 ≈ ?⊥ ⊢ ⊥ (unit monoidality)
- ?(!A⊗!B) ⊢ ?!(A⊗B) ≈ !?(A⅋B) ⊢ !(?A⅋?B)
- !?!A⊗!?!B ⊢ !?!(A⊗B) ≈ ?!?(A⅋B) ⊢ ?!?A⅋?!?B
- 1 ⊢ !?1 ≈ ?!⊥ ⊢ ⊥
- 1 ⊢ !(X^⅋X) ≈ ?(X⊗X^) ⊢ ⊥ (pseudo second-order encoding)
- !(X^⅋X) ⊢ 1 ≈ ⊥ ⊢ ?(X⊗X^) (pseudo second-order encoding)
- !A⊕!B ⊢ !(A⊕B) ≈ ?(A&B) ⊢ ?A&?B (monoidality)
- ?A⊕?B ⊢ ?(A⊕B) ≈ !(A&B) ⊢ !A&!B (monoidality)
- ?(!A⊕!B) ⊢ ?!(A⊕B) ≈ !?(A&B) ⊢ !(?A&?B)
- ?!(?A⊕?B) ⊢ ?(!?A⊕!?B) ≈ !(?!A&?!B) ⊢ !?(!A&!B)
- !(A&B) ⊢ !A⊗!B ≈ ?A⅋?B ⊢ ?(A⊕B) (exponential isomorphism)
- !A⊗!B ⊢ !(A&B) ≈ ?(A⊕B) ⊢ ?A⅋?B (exponential isomorphism)
- !⊤ ⊢ 1 ≈ ⊥ ⊢ ?0 (unit exponential isomorphism)
- 1 ⊢ !⊤ ≈ ?0 ⊢ ⊥ (unit exponential isomorphism)
- !A⊗!B ⊢ !(!A&!B) (Seely condition)
- A⊕B ⊢ !(A⊸X)⊸!(B⊸X)⊸X (pseudo second-order encoding)
- !(A⊸A⊕B)⊸!(B⊸A⊕B)⊸A⊕B ⊢ A⊕B (pseudo second-order encoding)
- A⊸!B⊸A (K combinator)
- (A⊸B⊸C)⊸(A⊸B)⊸!A⊸C (S combinator)
- ((A⊸?B)⊸A)⊸?A (Peirce's law)
- !A⊸!B⊸A (K combinator)
- !(!A⊸!B⊸C)⊸!(!A⊸B)⊸!A⊸C (S combinator)
- !(!A⊸B), !(!B⊸C) ⊢ !A⊸C (composition)
- (A⊸(0⊸B)⊸A')⊸((A⊸A')⊸0)⊸B' (Schellinx' formula)
- ((A⊸A')⊸0)⊸A⊗⊤ (Lafont's formula)
- ((((0⊸1)⊸1)⊸0)⊸0)⊸1 (Wu's formula)
- (((A⊗⊤)&(B⊗⊤))⊸0)⊸((A⊸A')⊕(B⊸B')) (Laurent's formula)
- A⊗(A⊸A) ⊢ A⊗!(A⊸A) (variant on Beffara's formula)
- ⊢ ?A, ?(B⅋B), ?(A⊥⅋B⊥), ?(⊥⊗⊥) (lcm of 1 and 2)
- ⊢ ?(A⅋A), ?(B⅋B⅋B), ?(A⊥⅋B⊥), ?(⊥⊗⊥) (lcm of 2 and 3)
- ?(A⊥⊕A)
- ⊢ (1⅋1)⊗⊥, ?(?1⊗?1)
- A⊗!(A⊸A⊗A)⊗!(A⊸1) ⊢ 1
- A⊗!(A⊸A⊗A)⊗!(A⊸1) ⊢ (A⊗!(A⊸A⊗A)⊗!(A⊸1))⊗(A⊗!(A⊸A⊗A)⊗!(A⊸1))
- ?((A⊕A⊥)⊗(((B⊗B)⊕B⊥)⅋((B⊗B)⊕B⊥)))
- o with o ::= !o⊸o (untyped λ-calculus)
- a with a ::= ?a^
- N with N ::= 1⊕N (Peano natural numbers)