| ⊦ IOAut?(IOAut(lstart, lstep, lext)) ∧ IOAut?(IOAut(rstart, rstep, rext)) ∧ Πok(lext, rext, lren, rren) → IOAut?(Π(IOAut(lstart, lstep, lext), IOAut(rstart, rstep, rext), lren, rren)) |
IOAut?(IOAut(lstart, lstep, lext)), IOAut?(IOAut(rstart, rstep, rext)), Πok(lext, rext, lren, rren), ¬ IOAut?(Π(IOAut(lstart, lstep, lext), IOAut(rstart, rstep, rext), lren, rren)) ⊦
| IOAut?(IOAut(lstart, lstep, lext)), IOAut?(IOAut(rstart, rstep, rext)), Πok(lext, rext, lren, rren), ¬ IOAut?(Π(IOAut(lstart, lstep, lext), IOAut(rstart, rstep, rext), lren, rren)) ⊦ |
IOAut?(IOAut(rstart, rstep, rext)), IOAut?(IOAut(lstart, lstep, lext)), Πok(lext, rext, lren, rren), ¬ IOAut?(IOAut(Π(lstart, rstart), Π(lstep, rstep, lren, rren, lext, rext), Π(lext, rext, lren, rren))) ⊦
Used simplifier rules: product-def: ⊦ Π(IOAut(lstart, lstep, lext), IOAut(rstart, rstep, rext), lren, rren) = IOAut (Π(lstart, rstart), Π(lstep, rstep, lren, rren, lext, rext), Π(lext, rext, lren, rren));
| IOAut?(IOAut(rstart, rstep, rext)), IOAut?(IOAut(lstart, lstep, lext)), Πok(lext, rext, lren, rren), ¬ IOAut?(IOAut(Π(lstart, rstart), Π(lstep, rstep, lren, rren, lext, rext), Π(lext, rext, lren, rren))) ⊦ |
⊦ IOAut?(IOAut(start, step, ext)) ↔ (∃ s. start(s) ∧ oinj(ext))
IOAut?(IOAut(lstart, lstep, lext)), IOAut?(IOAut(rstart, rstep, rext)), Πok(lext, rext, lren, rren), ∀ s. ¬(Π(lstart, rstart)(s) ∧ oinj(Π(lext, rext, lren, rren))) ⊦
Used terms: Π(lstart, rstart), Π(lstep, rstep, lren, rren, lext, rext), Π(lext, rext, lren, rren)
| ⊦ IOAut?(IOAut(start, step, ext)) ↔ (∃ s. start(s) ∧ oinj(ext)) |
| IOAut?(IOAut(lstart, lstep, lext)), IOAut?(IOAut(rstart, rstep, rext)), Πok(lext, rext, lren, rren), ∀ s. ¬(Π(lstart, rstart)(s) ∧ oinj(Π(lext, rext, lren, rren))) ⊦ |
IOAut?(IOAut(rstart, rstep, rext)), IOAut?(IOAut(lstart, lstep, lext)), Πok(lext, rext, lren, rren), (∀ s. ¬ Π(lstart, rstart)(s)) ∨ ¬ oinj(Π(lext, rext, lren, rren)) ⊦
| IOAut?(IOAut(rstart, rstep, rext)), IOAut?(IOAut(lstart, lstep, lext)), Πok(lext, rext, lren, rren), (∀ s. ¬ Π(lstart, rstart)(s)) ∨ ¬ oinj(Π(lext, rext, lren, rren)) ⊦ |
⊦ IOAut?(IOAut(start, step, ext)) ↔ (∃ s. start(s) ∧ oinj(ext))
IOAut?(IOAut(lstart, lstep, lext)), Πok(lext, rext, lren, rren), ∃ s. rstart(s) ∧ oinj(rext), (∀ s. ¬ Π(lstart, rstart)(s)) ∨ ¬ oinj(Π(lext, rext, lren, rren)) ⊦
Used terms: rstart, rstep, rext
| ⊦ IOAut?(IOAut(start, step, ext)) ↔ (∃ s. start(s) ∧ oinj(ext)) |
| IOAut?(IOAut(lstart, lstep, lext)), Πok(lext, rext, lren, rren), ∃ s. rstart(s) ∧ oinj(rext), (∀ s. ¬ Π(lstart, rstart)(s)) ∨ ¬ oinj(Π(lext, rext, lren, rren)) ⊦ |
IOAut?(IOAut(lstart, lstep, lext)), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), (∀ s. ¬ Π(lstart, rstart)(s)) ∨ ¬ oinj(Π(lext, rext, lren, rren)) ⊦
| IOAut?(IOAut(lstart, lstep, lext)), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), (∀ s. ¬ Π(lstart, rstart)(s)) ∨ ¬ oinj(Π(lext, rext, lren, rren)) ⊦ |
⊦ IOAut?(IOAut(start, step, ext)) ↔ (∃ s. start(s) ∧ oinj(ext))
oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∃ s. lstart(s) ∧ oinj(lext), (∀ s. ¬ Π(lstart, rstart)(s)) ∨ ¬ oinj(Π(lext, rext, lren, rren)) ⊦
Used terms: lstart, lstep, lext
| ⊦ IOAut?(IOAut(start, step, ext)) ↔ (∃ s. start(s) ∧ oinj(ext)) |
| oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∃ s. lstart(s) ∧ oinj(lext), (∀ s. ¬ Π(lstart, rstart)(s)) ∨ ¬ oinj(Π(lext, rext, lren, rren)) ⊦ |
lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), (∀ s. ¬ Π(lstart, rstart)(s)) ∨ ¬ oinj(Π(lext, rext, lren, rren)) ⊦
| lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), (∀ s. ¬ Π(lstart, rstart)(s)) ∨ ¬ oinj(Π(lext, rext, lren, rren)) ⊦ |
lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ s. ¬ Π(lstart, rstart)(s) ⊦
lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ¬ oinj(Π(lext, rext, lren, rren)) ⊦
| lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ s. ¬ Π(lstart, rstart)(s) ⊦ |
Used simplifier rules: lrstart-def: ⊦ Π(lstart, rstart)((ls, rs)) ↔ lstart(ls) ∧ rstart(rs); Used terms: (ls, rs)
| lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ¬ oinj(Π(lext, rext, lren, rren)) ⊦ |
⊦ oinj(of) ↔ (∀ a1, a2. of(a1) ≠ None ∧ of(a1) = of(a2) → a1 = a2)
lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∃ pa, pa0. ¬(Π(lext, rext, lren, rren)(pa) ≠ None ∧ Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0) → pa = pa0) ⊦
Used terms: Π(lext, rext, lren, rren)
| ⊦ oinj(of) ↔ (∀ a1, a2. of(a1) ≠ None ∧ of(a1) = of(a2) → a1 = a2) |
| lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∃ pa, pa0. ¬(Π(lext, rext, lren, rren)(pa) ≠ None ∧ Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0) → pa = pa0) ⊦ |
Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren) ⊦
| Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren) ⊦ |
⊦ Πok(lext, rext, lren, rren) ↔ inj(lren) ∧ inj(rren) ∧ surj(lren, rren) ∧ sharingok(lext, rext, lren, rren)
Πok(lext, rext, lren, rren) ↔ inj(lren) ∧ inj(rren) ∧ surj(lren, rren) ∧ sharingok(lext, rext, lren, rren), Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren) ⊦
Used terms: lext, rext, lren, rren
| ⊦ Πok(lext, rext, lren, rren) ↔ inj(lren) ∧ inj(rren) ∧ surj(lren, rren) ∧ sharingok(lext, rext, lren, rren) |
| Πok(lext, rext, lren, rren) ↔ inj(lren) ∧ inj(rren) ∧ surj(lren, rren) ∧ sharingok(lext, rext, lren, rren), Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren) ⊦ |
Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), sharingok(lext, rext, lren, rren), surj(lren, rren), Πok(lext, rext, lren, rren) ⊦
| Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), sharingok(lext, rext, lren, rren), surj(lren, rren), Πok(lext, rext, lren, rren) ⊦ |
⊦ surj(lren, rren) ↔ (∀ pa. (∃ la. pa = lren(la)) ∨ (∃ ra. pa = rren(ra)))
Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), ∀ pa. (∃ la. pa = lren(la)) ∨ (∃ ra. pa = rren(ra)) ⊦
Used terms: lren, rren
| ⊦ surj(lren, rren) ↔ (∀ pa. (∃ la. pa = lren(la)) ∨ (∃ ra. pa = rren(ra))) |
| Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), ∀ pa. (∃ la. pa = lren(la)) ∨ (∃ ra. pa = rren(ra)) ⊦ |
Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), ∀ pa. (∃ la. pa = lren(la)) ∨ (∃ ra. pa = rren(ra)), (∃ la. pa = lren(la)) ∨ (∃ ra. pa = rren(ra)) ⊦
Used terms: pa
| Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), ∀ pa. (∃ la. pa = lren(la)) ∨ (∃ ra. pa = rren(ra)), (∃ la. pa = lren(la)) ∨ (∃ ra. pa = rren(ra)) ⊦ |
Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), ∀ pa. (∃ la. pa = lren(la)) ∨ (∃ ra. pa = rren(ra)), pa = lren(la) ∨ pa = rren(ra) ⊦
| Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), ∀ pa. (∃ la. pa = lren(la)) ∨ (∃ ra. pa = rren(ra)), pa = lren(la) ∨ pa = rren(ra) ⊦ |
Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), pa = lren(la) ∨ pa = rren(ra), (∃ la. pa0 = lren(la)) ∨ (∃ ra. pa0 = rren(ra)) ⊦
Used terms: pa0
| Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), pa = lren(la) ∨ pa = rren(ra), (∃ la. pa0 = lren(la)) ∨ (∃ ra. pa0 = rren(ra)) ⊦ |
Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), pa = lren(la) ∨ pa = rren(ra), pa0 = lren(la0) ∨ pa0 = rren(ra0) ⊦
| Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), pa = lren(la) ∨ pa = rren(ra), pa0 = lren(la0) ∨ pa0 = rren(ra0) ⊦ |
pa = lren(la), Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), pa0 = lren(la0) ∨ pa0 = rren(ra0) ⊦
pa = rren(ra), Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), pa0 = lren(la0) ∨ pa0 = rren(ra0) ⊦
| pa = lren(la), Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), pa0 = lren(la0) ∨ pa0 = rren(ra0) ⊦ |
lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren) ⊦
Used simplifier rules: lrext-def-left: ⊦ Πok(lext, rext, lren, rren) → Π(lext, rext, lren, rren)(lren(la)) = lext(la); lrext-def-right: ⊦ Πok(lext, rext, lren, rren) → Π(lext, rext, lren, rren)(rren(ra)) = rext(ra); ⊦ inj(f) → (f(a1) = f(a2) ↔ a1 = a2); (s) ⊦ oinj(of) ∧ of(a1) ≠ None → (of(a1) = of(a2) ↔ a1 = a2); (s)
| lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren) ⊦ |
⊦ sharingok(lext, rext, lren, rren) ↔ (∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)))
lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
Used terms: lext, rext, lren, rren
| ⊦ sharingok(lext, rext, lren, rren) ↔ (∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra))) |
| lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), lren(la) = rren(ra0) → lext(la) ≠ None ∧ rext(ra0) ≠ None ∧ lext(la) = rext(ra0), ¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra0)) ∧ lext(la) ≠ None ∧ rext(ra0) ≠ None → lext(la) ≠ rext(ra0), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
Used terms: la, ra0
| lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), lren(la) = rren(ra0) → lext(la) ≠ None ∧ rext(ra0) ≠ None ∧ lext(la) = rext(ra0), ¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra0)) ∧ lext(la) ≠ None ∧ rext(ra0) ≠ None → lext(la) ≠ rext(ra0), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ ¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra0))
| lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ ¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra0)) |
lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), cod(rren)(lren(la)), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ ¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra0))
lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ¬ cod(rren)(lren(la)), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ ¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra0))
Used formulas: cod(rren)(lren(la))
| lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), cod(rren)(lren(la)), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ ¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra0)) |
lext(la) = rext(ra0), rren(ra) = lren(la), rren(ra1) = lren(la), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
Used simplifier rules: ⊦ cod(f)(b) ↔ (∃ a. f(a) = b); (as) ⊦ ¬ cod(f)(b) → b ≠ f(a); (as)
| lext(la) = rext(ra0), rren(ra) = lren(la), rren(ra1) = lren(la), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
Used simplifier rules: ⊦ oinj(of) ∧ of(a1) ≠ None → (of(a1) = of(a2) ↔ a1 = a2); (s) Used terms: la, ra
| lext(la) = rext(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ¬ cod(rren)(lren(la)), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ ¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra0)) |
lext(la) = rext(ra0), lren(la1) = rren(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ¬ cod(rren)(lren(la)), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
Used simplifier rules: ⊦ cod(f)(b) ↔ (∃ a. f(a) = b); (as)
| lext(la) = rext(ra0), lren(la1) = rren(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ¬ cod(rren)(lren(la)), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
lext(la) = rext(ra0), lren(la1) = rren(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ¬ cod(rren)(lren(la)), lren(la1) = rren(ra0) → lext(la1) ≠ None ∧ rext(ra0) ≠ None ∧ lext(la1) = rext(ra0), ¬ cod(rren)(lren(la1)) ∧ ¬ cod(lren)(rren(ra0)) ∧ lext(la1) ≠ None ∧ rext(ra0) ≠ None → lext(la1) ≠ rext(ra0), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
Used terms: la1, ra0
| lext(la) = rext(ra0), lren(la1) = rren(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ¬ cod(rren)(lren(la)), lren(la1) = rren(ra0) → lext(la1) ≠ None ∧ rext(ra0) ≠ None ∧ lext(la1) = rext(ra0), ¬ cod(rren)(lren(la1)) ∧ ¬ cod(lren)(rren(ra0)) ∧ lext(la1) ≠ None ∧ rext(ra0) ≠ None → lext(la1) ≠ rext(ra0), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
lext(la1) = rext(ra0), lext(la) = rext(ra0), lren(la1) = rren(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ¬ cod(rren)(lren(la)), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
Used simplifier rules: ⊦ cod(f)(f(a)); (s)
| lext(la1) = rext(ra0), lext(la) = rext(ra0), lren(la1) = rren(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ¬ cod(rren)(lren(la)), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
⊦ oinj(of) ↔ (∀ a1, a2. of(a1) ≠ None ∧ of(a1) = of(a2) → a1 = a2)
lext(la) = rext(ra0), lext(la1) = rext(ra0), lren(la1) = rren(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ¬ cod(rren)(lren(la)), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)), ∀ la, la0. lext(la) ≠ None ∧ lext(la) = lext(la0) → la = la0 ⊦
Used terms: lext
| ⊦ oinj(of) ↔ (∀ a1, a2. of(a1) ≠ None ∧ of(a1) = of(a2) → a1 = a2) |
| lext(la) = rext(ra0), lext(la1) = rext(ra0), lren(la1) = rren(ra0), lren(la) ≠ rren(ra0), rext(ra0) ≠ None, rren(ra0) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ¬ cod(rren)(lren(la)), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)), ∀ la, la0. lext(la) ≠ None ∧ lext(la) = lext(la0) → la = la0 ⊦ |
Used terms: la, la1
| pa = rren(ra), Π(lext, rext, lren, rren)(pa) = Π(lext, rext, lren, rren)(pa0), pa ≠ pa0, Π(lext, rext, lren, rren)(pa0) ≠ None, inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren), pa0 = lren(la0) ∨ pa0 = rren(ra0) ⊦ |
rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren) ⊦
Used simplifier rules: lrext-def-right: ⊦ Πok(lext, rext, lren, rren) → Π(lext, rext, lren, rren)(rren(ra)) = rext(ra); lrext-def-left: ⊦ Πok(lext, rext, lren, rren) → Π(lext, rext, lren, rren)(lren(la)) = lext(la); ⊦ inj(f) → (f(a1) = f(a2) ↔ a1 = a2); (s) ⊦ oinj(of) ∧ of(a1) ≠ None → (of(a1) = of(a2) ↔ a1 = a2); (s)
| rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), sharingok(lext, rext, lren, rren), Πok(lext, rext, lren, rren) ⊦ |
⊦ sharingok(lext, rext, lren, rren) ↔ (∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)))
rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
Used terms: lext, rext, lren, rren
| ⊦ sharingok(lext, rext, lren, rren) ↔ (∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra))) |
| rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), lren(la0) = rren(ra) → lext(la0) ≠ None ∧ rext(ra) ≠ None ∧ lext(la0) = rext(ra), ¬ cod(rren)(lren(la0)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la0) ≠ None ∧ rext(ra) ≠ None → lext(la0) ≠ rext(ra), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
Used terms: la0, ra
| rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), lren(la0) = rren(ra) → lext(la0) ≠ None ∧ rext(ra) ≠ None ∧ lext(la0) = rext(ra), ¬ cod(rren)(lren(la0)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la0) ≠ None ∧ rext(ra) ≠ None → lext(la0) ≠ rext(ra), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ ¬ cod(rren)(lren(la0)) ∧ ¬ cod(lren)(rren(ra))
| rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ ¬ cod(rren)(lren(la0)) ∧ ¬ cod(lren)(rren(ra)) |
rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), cod(rren)(lren(la0)), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), cod(lren)(rren(ra)), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
| rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), cod(rren)(lren(la0)), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
rext(ra) = lext(la0), rren(ra1) = lren(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
Used simplifier rules: ⊦ cod(f)(b) ↔ (∃ a. f(a) = b); (as)
| rext(ra) = lext(la0), rren(ra1) = lren(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
Used simplifier rules: ⊦ oinj(of) ∧ of(a1) ≠ None → (of(a1) = of(a2) ↔ a1 = a2); (s) Used terms: la0, ra1
| rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), cod(lren)(rren(ra)), inj(lren), inj(rren), lstart(ls), oinj(rext), oinj(lext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
lren(la) = rren(ra), rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦
Used simplifier rules: ⊦ cod(f)(b) ↔ (∃ a. f(a) = b); (as)
| lren(la) = rren(ra), rext(ra) = lext(la0), lext(la0) ≠ None, lren(la0) ≠ rren(ra0), rren(ra) ≠ lren(la0), inj(rren), inj(lren), lstart(ls), oinj(lext), oinj(rext), rstart(rs), Πok(lext, rext, lren, rren), ∀ la, ra. (lren(la) = rren(ra) → lext(la) ≠ None ∧ rext(ra) ≠ None ∧ lext(la) = rext(ra)) ∧ (¬ cod(rren)(lren(la)) ∧ ¬ cod(lren)(rren(ra)) ∧ lext(la) ≠ None ∧ rext(ra) ≠ None → lext(la) ≠ rext(ra)) ⊦ |
Used simplifier rules: ⊦ oinj(of) ∧ of(a1) ≠ None → (of(a1) = of(a2) ↔ a1 = a2); (s) Used terms: la, ra
The following image shows the proof tree of sequent calculus. The proved goal is at the bottom. You can click on the nodes to view additional rules. See here for details on colors in a proof tree.