Let a be given.
We prove the intermediate
claim HaX:
a ∈ X.
An exact proof term for the current goal is (HAsubX a HaA).
We prove the intermediate
claim Ha0':
¬ (a = 0).
We prove the intermediate
claim H0A:
0 ∈ A.
rewrite the current goal using HaEq0 (from right to left).
An exact proof term for the current goal is HaA.
An exact proof term for the current goal is (H0An H0A).
An exact proof term for the current goal is (HexA_basis a HaA).
Apply Hexb to the current goal.
Let b be given.
Assume HbCore.
Apply HbCore to the current goal.
Assume HbB HbData.
Apply HbData to the current goal.
Assume Hab HbsubUB.
Apply Hexx to the current goal.
Let x be given.
Assume HxCore.
Apply HxCore to the current goal.
Assume HxX HxData.
Apply HxData to the current goal.
Assume Hxa HIsubb.
rewrite the current goal using HIdef (from left to right).
Apply andI to the current goal.
An exact proof term for the current goal is Hxa.
Apply orIL to the current goal.
Use reflexivity.
Let z be given.
We prove the intermediate
claim Hzb:
z ∈ b.
An exact proof term for the current goal is (HIsubb z HzI).
An exact proof term for the current goal is (HbsubUB z Hzb).
We use a to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is HaA.
We use x to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is HxX.
Apply andI to the current goal.
Apply andI to the current goal.
An exact proof term for the current goal is Hxa.
An exact proof term for the current goal is HIsubUB.
Let b be given.
We prove the intermediate
claim HbX:
b ∈ X.
An exact proof term for the current goal is (HBsubX b HbB).
We prove the intermediate
claim Hb0':
¬ (b = 0).
We prove the intermediate
claim H0B:
0 ∈ B.
rewrite the current goal using HbEq0 (from right to left).
An exact proof term for the current goal is HbB.
An exact proof term for the current goal is (H0Bn H0B).
An exact proof term for the current goal is (HexB_basis b HbB).
Apply Hexc to the current goal.
Let c be given.
Assume HcCore.
Apply HcCore to the current goal.
Assume HcB HcData.
Apply HcData to the current goal.
Assume Hbc HcsubVA.
Apply Hexy to the current goal.
Let y be given.
Assume HyCore.
Apply HyCore to the current goal.
Assume HyX HyData.
Apply HyData to the current goal.
Assume Hyb HJsubc.
rewrite the current goal using HJdef (from left to right).
Apply andI to the current goal.
An exact proof term for the current goal is Hyb.
Apply orIL to the current goal.
Use reflexivity.
Let z be given.
We prove the intermediate
claim Hzc:
z ∈ c.
An exact proof term for the current goal is (HJsubc z HzJ).
An exact proof term for the current goal is (HcsubVA z Hzc).
We use b to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is HbB.
We use y to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is HyX.
Apply andI to the current goal.
Apply andI to the current goal.
An exact proof term for the current goal is Hyb.
An exact proof term for the current goal is HJsubVA.
Let z be given.
We prove the intermediate
claim HzU:
z ∈ U.
An
exact proof term for the current goal is
(binintersectE1 U V z HzUV).
We prove the intermediate
claim HzV:
z ∈ V.
An
exact proof term for the current goal is
(binintersectE2 U V z HzUV).
We prove the intermediate
claim HUdef:
U = ⋃ FamA.
We prove the intermediate
claim HVdef:
V = ⋃ FamB.
We prove the intermediate
claim HzUA:
z ∈ ⋃ FamA.
rewrite the current goal using HUdef (from right to left).
An exact proof term for the current goal is HzU.
We prove the intermediate
claim HzVB:
z ∈ ⋃ FamB.
rewrite the current goal using HVdef (from right to left).
An exact proof term for the current goal is HzV.
Let I be given.
Let J be given.
Apply HIprop to the current goal.
Let a0 be given.
Assume Ha0Core.
Apply Ha0Core to the current goal.
Assume Ha0A Hx0Ex.
Apply Hx0Ex to the current goal.
Let x0 be given.
Assume Hx0Core.
Apply Hx0Core to the current goal.
Assume Hx0X HIAux.
We prove the intermediate
claim Ha0X:
a0 ∈ X.
An exact proof term for the current goal is (HAsubX a0 Ha0A).
We prove the intermediate
claim Hx0a0:
order_rel X x0 a0.
Apply HJprop to the current goal.
Let b0 be given.
Assume Hb0Core.
Apply Hb0Core to the current goal.
Assume Hb0B Hy0Ex.
Apply Hy0Ex to the current goal.
Let y0 be given.
Assume Hy0Core.
Apply Hy0Core to the current goal.
Assume Hy0X HJAux.
We prove the intermediate
claim Hb0X:
b0 ∈ X.
An exact proof term for the current goal is (HBsubX b0 Hb0B).
We prove the intermediate
claim Hy0b0:
order_rel X y0 b0.
rewrite the current goal using HIeq (from right to left).
An exact proof term for the current goal is HzI.
rewrite the current goal using HJeq (from right to left).
An exact proof term for the current goal is HzJ.
We prove the intermediate
claim HzX:
z ∈ X.
We prove the intermediate
claim HzleA:
z = a0 ∨ order_rel X z a0.
We prove the intermediate
claim Hy0z:
order_rel X y0 z.
We prove the intermediate
claim HzleB:
z = b0 ∨ order_rel X z b0.
We prove the intermediate
claim Hzy0:
order_rel X z y0.
Apply HzleA to the current goal.
rewrite the current goal using Hza0 (from left to right).
An exact proof term for the current goal is Ha0y0.
An
exact proof term for the current goal is
(order_rel_trans X z a0 y0 Hso HzX Ha0X Hy0X HzltA Ha0y0).
We prove the intermediate
claim Hy0y0:
order_rel X y0 y0.
An
exact proof term for the current goal is
(order_rel_trans X y0 z y0 Hso Hy0X HzX Hy0X Hy0z Hzy0).
An
exact proof term for the current goal is
((order_rel_irref X y0) Hy0y0).
We prove the intermediate
claim Hzy0:
z = y0 ∨ order_rel X z y0.
rewrite the current goal using Ha0eqy0 (from right to left).
An exact proof term for the current goal is HzleA.
Apply Hzy0 to the current goal.
We prove the intermediate
claim Hy0y0:
order_rel X y0 y0.
An
exact proof term for the current goal is
(Hzy0eq (λu v : set ⇒ order_rel X y0 u) Hy0z).
An
exact proof term for the current goal is
((order_rel_irref X y0) Hy0y0).
We prove the intermediate
claim Hy0y0:
order_rel X y0 y0.
An
exact proof term for the current goal is
(order_rel_trans X y0 z y0 Hso Hy0X HzX Hy0X Hy0z Hzy0lt).
An
exact proof term for the current goal is
((order_rel_irref X y0) Hy0y0).
rewrite the current goal using HJdef' (from left to right).
Apply andI to the current goal.
An exact proof term for the current goal is Hy0a0.
Apply orIR to the current goal.
An exact proof term for the current goal is Ha0b0.
We prove the intermediate
claim Ha0VA:
a0 ∈ VA.
An exact proof term for the current goal is (HJsubVA a0 Ha0J).
We prove the intermediate
claim Ha0NotVA:
a0 ∉ VA.
We prove the intermediate
claim Ha0XVA:
a0 ∈ X ∖ VA.
rewrite the current goal using HAdef (from right to left).
An exact proof term for the current goal is Ha0A.
An
exact proof term for the current goal is
(setminusE2 X VA a0 Ha0XVA).
An exact proof term for the current goal is (Ha0NotVA Ha0VA).
We prove the intermediate
claim Ha0AB:
a0 ∈ A ∩ B.
We prove the intermediate
claim Hb0eqa0:
b0 = a0.
Use symmetry.
An exact proof term for the current goal is Ha0eqb0.
An
exact proof term for the current goal is
(Hb0eqa0 (λu v : set ⇒ u ∈ B) Hb0B).
We prove the intermediate
claim Ha0E:
a0 ∈ Empty.
An
exact proof term for the current goal is
(HABdisj (λU0 V0 : set ⇒ a0 ∈ U0) Ha0AB).
An
exact proof term for the current goal is
(EmptyE a0 Ha0E False).
We prove the intermediate
claim Hzx0:
order_rel X z x0.
Apply HzleB to the current goal.
rewrite the current goal using Hzb0 (from left to right).
An exact proof term for the current goal is Hb0x0.
An
exact proof term for the current goal is
(order_rel_trans X z b0 x0 Hso HzX Hb0X Hx0X HzltB Hb0x0).
We prove the intermediate
claim Hx0x0:
order_rel X x0 x0.
An
exact proof term for the current goal is
((order_rel_irref X x0) Hx0x0).
We prove the intermediate
claim Hzx0:
z = x0 ∨ order_rel X z x0.
An
exact proof term for the current goal is
(Hb0eqx0 (λu v : set ⇒ z = u ∨ order_rel X z u) HzleB).
Apply Hzx0 to the current goal.
We prove the intermediate
claim Hx0z:
order_rel X x0 z.
We prove the intermediate
claim Hx0x0:
order_rel X x0 x0.
An
exact proof term for the current goal is
(Hzx0eq (λu v : set ⇒ order_rel X x0 u) Hx0z).
An
exact proof term for the current goal is
((order_rel_irref X x0) Hx0x0).
We prove the intermediate
claim Hx0x0:
order_rel X x0 x0.
An
exact proof term for the current goal is
((order_rel_irref X x0) Hx0x0).
rewrite the current goal using HIdef' (from left to right).
Apply andI to the current goal.
An exact proof term for the current goal is Hx0b0.
Apply orIR to the current goal.
An exact proof term for the current goal is Hb0a0.
We prove the intermediate
claim Hb0UB:
b0 ∈ UB.
An exact proof term for the current goal is (HIsubUB b0 Hb0I).
We prove the intermediate
claim Hb0NotUB:
b0 ∉ UB.
We prove the intermediate
claim Hb0XUB:
b0 ∈ X ∖ UB.
rewrite the current goal using HBdef (from right to left).
An exact proof term for the current goal is Hb0B.
An
exact proof term for the current goal is
(setminusE2 X UB b0 Hb0XUB).
An exact proof term for the current goal is (Hb0NotUB Hb0UB).