Exact expanded PA statement
forall b c z e l n. (exists u v. (((exists h. h + S 1 = S ((S 0) * v)) /\ exists q. u = q * S ((S 0) * v) + 1) /\ (((exists h. h + S n = S ((S l) * v)) /\ exists q. u = q * S ((S l) * v) + n) /\ forall i. (exists h. h + S i = l) -> exists p r s. (((exists h. h + S p = S ((S i) * c)) /\ exists q. b = q * S ((S i) * c) + p) /\ (((exists h. h + S r = S ((S i) * v)) /\ exists q. u = q * S ((S i) * v) + r) /\ (((exists h. h + S s = S ((S S i) * v)) /\ exists q. u = q * S ((S S i) * v) + s) /\ s = r * p)))))) -> (forall i a. (exists h. h + S i = l) -> ((exists h. h + S a = S ((S i) * c)) /\ exists q. b = q * S ((S i) * c) + a) -> ((exists h. h + S a = S ((S i) * e)) /\ exists q. z = q * S ((S i) * e) + a)) -> (exists u v. (((exists h. h + S 1 = S ((S 0) * v)) /\ exists q. u = q * S ((S 0) * v) + 1) /\ (((exists h. h + S n = S ((S l) * v)) /\ exists q. u = q * S ((S l) * v) + n) /\ forall i. (exists h. h + S i = l) -> exists p r s. (((exists h. h + S p = S ((S i) * e)) /\ exists q. z = q * S ((S i) * e) + p) /\ (((exists h. h + S r = S ((S i) * v)) /\ exists q. u = q * S ((S i) * v) + r) /\ (((exists h. h + S s = S ((S S i) * v)) /\ exists q. u = q * S ((S S i) * v) + s) /\ s = r * p))))))Structural proof guide
One-way extensional factor-prefix preservation transports Product without changing its trace.
Direct prerequisites: none. The authored body proceeds by case analysis (10), intermediate claims (1).
Proof neighborhood
Direct dependencies
none
Direct dependents
Formal native tactic body
Dependencies are hypotheses of this body receipt. The focused endpoint audits separately check the complete empty-context certificates.
- 0001
intro b - 0002
intro c - 0003
intro z - 0004
intro e - 0005
intro l - 0006
intro n - 0007
intro hproduct - 0008
intro hpres - 0009
cases hproduct - 0010
cases hproduct_witness - 0011
cases hproduct_witness_witness - 0012
cases hproduct_witness_witness_right - 0013
exists x - 0014
exists x1 - 0015
split - 0016
exact hproduct_witness_witness_left - 0017
split - 0018
exact hproduct_witness_witness_right_left - 0019
intro i - 0020
intro hi - 0021
have hstep : exists p r s. (((exists h. h + S p = S ((S i) * c)) /\ exists q. b = q * S ((S i) * c) + p) /\ (((exists h. h + S r = S ((S i) * x1)) /\ exists q. x = q * S ((S i) * x1) + r) /\ (((exists h. h + S s = S ((S S i) * x1)) /\ exists q. x = q * S ((S S i) * x1) + s) /\ s = r * p))) - 0022
specialize hproduct_witness_witness_right_right i - 0023
apply hproduct_witness_witness_right_right - 0024
exact hi - 0025
cases hstep - 0026
cases hstep_witness - 0027
cases hstep_witness_witness - 0028
cases hstep_witness_witness_witness - 0029
cases hstep_witness_witness_witness_right - 0030
cases hstep_witness_witness_witness_right_right - 0031
exists x2 - 0032
exists x3 - 0033
exists x4 - 0034
split - 0035
specialize hpres i - 0036
specialize hpres x2 - 0037
apply hpres - 0038
exact hi - 0039
exact hstep_witness_witness_witness_left - 0040
split - 0041
exact hstep_witness_witness_witness_right_left - 0042
split - 0043
exact hstep_witness_witness_witness_right_right_left - 0044
exact hstep_witness_witness_witness_right_right_right