Let b1 be given.
Let b2 be given.
Let x be given.
Apply Hb1prop to the current goal.
Let c1 be given.
Assume Hb1prop2.
Apply Hb1prop2 to the current goal.
Let r1 be given.
Assume Hb1core.
Apply Hb2prop to the current goal.
Let c2 be given.
Assume Hb2prop2.
Apply Hb2prop2 to the current goal.
Let r2 be given.
Assume Hb2core.
We prove the intermediate
claim Hr1:
Rlt 0 r1.
We prove the intermediate
claim Hr2:
Rlt 0 r2.
rewrite the current goal using Hb1eq (from right to left).
An exact proof term for the current goal is Hx1.
rewrite the current goal using Hb2eq (from right to left).
An exact proof term for the current goal is Hx2.
Apply (ball_refine_two_balls x c1 c2 r1 r2 HxEuclid Hc1 Hc2 Hr1 Hr2 Hxball1 Hxball2) to the current goal.
Let r3 be given.
Assume Hrefine2.
We prove the intermediate
claim Hr3:
Rlt 0 r3.
We use b3 to witness the existential quantifier.
Apply andI to the current goal.
rewrite the current goal using Hb3def (from left to right).
An
exact proof term for the current goal is
(circular_regionI x r3 HxEuclid Hr3).
Apply andI to the current goal.
An exact proof term for the current goal is Hr3.
We will
prove b3 ⊆ b1 ∩ b2.
Let p be given.
We will
prove p ∈ b1 ∩ b2.
An exact proof term for the current goal is (HrefineP p HpE Hpball).
We prove the intermediate
claim Hpb1:
p ∈ b1.
rewrite the current goal using Hb1eq (from left to right).
We prove the intermediate
claim Hpb2:
p ∈ b2.
rewrite the current goal using Hb2eq (from left to right).
An
exact proof term for the current goal is
(binintersectI b1 b2 p Hpb1 Hpb2).
∎