Let m be given.
Let n be given.
We prove the intermediate
claim LmS:
SNo m.
An
exact proof term for the current goal is
omega_SNo m Hm.
We prove the intermediate
claim LnN:
nat_p n.
An
exact proof term for the current goal is
omega_nat_p n Hn1.
We prove the intermediate
claim Ln1:
n ∈ ω ∖ 1.
rewrite the current goal using
eq_1_Sing0 (from left to right).
An exact proof term for the current goal is Hn.
We prove the intermediate
claim LnS:
SNo n.
An
exact proof term for the current goal is
omega_SNo n Hn1.
We will
prove m * m = 2 * n * n.
rewrite the current goal using H4 (from left to right).
We will
prove (m :/: n) * n = m.
An exact proof term for the current goal is LmS.
An exact proof term for the current goal is LnS.
Apply Hn2 to the current goal.
rewrite the current goal using Hn0 (from left to right).
Apply SingI to the current goal.
rewrite the current goal using L1 (from right to left).
Use f_equal.
An
exact proof term for the current goal is
SNo_2.
An
exact proof term for the current goal is
SNoLt_0_2.
Let m be given.
Let n be given.
We prove the intermediate
claim LmS:
SNo m.
An
exact proof term for the current goal is
omega_SNo m Hm.
We prove the intermediate
claim Lmnn:
0 ≤ m.
An
exact proof term for the current goal is
omega_nonneg m Hm.
We prove the intermediate
claim LnS:
SNo n.
An
exact proof term for the current goal is
omega_SNo n Hn1.
We prove the intermediate
claim Lnnn:
0 ≤ n.
An
exact proof term for the current goal is
omega_nonneg n Hn1.
We prove the intermediate
claim Lnpos:
0 < n.
An exact proof term for the current goal is H5.
Apply Hn2 to the current goal.
rewrite the current goal using H5 (from right to left).
Apply SingI to the current goal.
rewrite the current goal using H4 (from left to right).
We will
prove (- m) :/: n ≤ 0.
rewrite the current goal using
minus_SNo_0 (from left to right).
An exact proof term for the current goal is H5.
An exact proof term for the current goal is Lnpos.
rewrite the current goal using H5 (from right to left).
rewrite the current goal using
minus_SNo_0 (from left to right).
rewrite the current goal using
div_SNo_0_num n LnS (from left to right).
Apply H3 to the current goal.
Let m be given.
Assume H.
Apply H to the current goal.
Assume H.
Apply H to the current goal.
Let n be given.
Assume H.
Apply H to the current goal.
An exact proof term for the current goal is LnQ m Hm n Hn H4.
∎