Search for blocks/addresses/...

Proofgold Proof

pf
Apply nat_ind with λ x0 . ∀ x1 . x1x0ordsucc (mul_nat 2 x1)mul_nat 2 x0 leaving 2 subgoals.
Let x0 of type ι be given.
Assume H0: x00.
Apply FalseE with ordsucc (mul_nat 2 x0)mul_nat 2 0.
Apply EmptyE with x0.
The subproof is completed by applying H0.
Let x0 of type ι be given.
Assume H0: nat_p x0.
Assume H1: ∀ x1 . x1x0ordsucc (mul_nat 2 x1)mul_nat 2 x0.
Let x1 of type ι be given.
Assume H2: x1ordsucc x0.
Apply mul_nat_SR with 2, x0, λ x2 x3 . ordsucc (mul_nat 2 x1)x3 leaving 2 subgoals.
The subproof is completed by applying H0.
Apply add_nat_SL with 1, mul_nat 2 x0, λ x2 x3 . ordsucc (mul_nat 2 x1)x3 leaving 3 subgoals.
The subproof is completed by applying nat_1.
Apply mul_nat_p with 2, x0 leaving 2 subgoals.
The subproof is completed by applying nat_2.
The subproof is completed by applying H0.
Apply add_nat_SL with 0, mul_nat 2 x0, λ x2 x3 . ordsucc (mul_nat 2 x1)ordsucc x3 leaving 3 subgoals.
The subproof is completed by applying nat_0.
Apply mul_nat_p with 2, x0 leaving 2 subgoals.
The subproof is completed by applying nat_2.
The subproof is completed by applying H0.
Apply add_nat_0L with mul_nat 2 x0, λ x2 x3 . ordsucc (mul_nat 2 x1)ordsucc (ordsucc x3) leaving 2 subgoals.
Apply mul_nat_p with 2, x0 leaving 2 subgoals.
The subproof is completed by applying nat_2.
The subproof is completed by applying H0.
Apply ordsuccE with x0, x1, ordsucc (mul_nat 2 x1)ordsucc (ordsucc (mul_nat 2 x0)) leaving 3 subgoals.
The subproof is completed by applying H2.
Assume H3: x1x0.
Apply ordsuccI1 with ordsucc (mul_nat 2 x0), ordsucc (mul_nat 2 x1).
Apply ordsuccI1 with mul_nat 2 x0, ordsucc (mul_nat 2 x1).
Apply H1 with x1.
The subproof is completed by applying H3.
Assume H3: x1 = x0.
Apply H3 with λ x2 x3 . ordsucc (mul_nat 2 x3)ordsucc (ordsucc (mul_nat 2 x0)).
The subproof is completed by applying ordsuccI2 with ordsucc (mul_nat 2 x0).