95 new Alpha admissions come from 96 source lemmas: tuple equality reflexivity reuses an already-admitted theorem and is not counted twice. All counts use actual finite beta-coded enumerations. G008 multiplicativity is proved; the general prime-power count and distinct-prime product formula are further goals. General prime-power fields (G091) remain open. Stable is unchanged.
Exact theorem in conservative defined notation
∀ m. ∀ n. ∀ k. ∀ A. ∀ B. ∀ C. ∀ D. ∀ u. ∀ E. ∀ F. ∀ G. ∀ H. ∀ v. ∀ P. ∀ Q. ∀ R. ∀ T. ∀ p. ∀ z. ∀ f. ∀ g. ∀ h. ∀ s. JordanTupleEnumeration(k,m,A,B,C,D,u) → JordanTupleEnumeration(k,n,E,F,G,H,v) → JordanRectangleCRT(m,n,k,A,B,C,D,u,E,F,G,H,v,P,Q,R,T,u · v) → Lt(p,u · v) → Lt(z,u · v) → BetaAt(P,Q,p,f) ∧ BetaAt(R,T,p,g) → BetaAt(P,Q,z,h) ∧ BetaAt(R,T,z,s) → IntegerVectorZero(f,g,h,s,k) → p = z
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 265 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
Named ingredients (4)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–20
03Fix variables and assumptionsL21–30
04Fix variables and assumptionsL31–31
Work with arbitrary variables or the premises of the current implication.
- L31
intro hsame
05Establish haL32–41
Establish this local claim before using it. It is not an additional assumption.
- L32
have ha : ∃ i. ∃ j. ∃ b. ∃ c. ∃ d. ∃ e. Lt(i,u) ∧ (Lt(j,v) ∧ (p = v · i + j ∧ (BetaAt(A,B,i,b) ∧ BetaAt(C,D,i,c) ∧ (BetaAt(E,F,j,d) ∧ BetaAt(G,H,j,e) ∧ (BetaAt(P,Q,p,f) ∧ BetaAt(R,T,p,g) ∧ (JordanCanonicalTupleCRT(m,n,b,c,d,e,f,g,k) ∧ JordanPrimitiveTuple(m · n,f,g,k)))))))Definitions: Lt(i,u)Lt(j,v)BetaAt(A,B,i,b)BetaAt(C,D,i,c)BetaAt(E,F,j,d)BetaAt(G,H,j,e)BetaAt(P,Q,p,f)BetaAt(R,T,p,g)JordanCanonicalTupleCRT(m,n,b,c,d,e,f,g,k)JordanPrimitiveTuple(m · n,f,g,k)Original native command in the exact edition - L33
specialize jordan_rectangle_crt_actual_entry (m) - L34
specialize jordan_rectangle_crt_actual_entry (n) - L35
specialize jordan_rectangle_crt_actual_entry (k) - L36
specialize jordan_rectangle_crt_actual_entry (A) - L37
specialize jordan_rectangle_crt_actual_entry (B) - L38
specialize jordan_rectangle_crt_actual_entry (C) - L39
specialize jordan_rectangle_crt_actual_entry (D) - L40
specialize jordan_rectangle_crt_actual_entry (u) - L41
specialize jordan_rectangle_crt_actual_entry (E)
06Use earlier factsL42–51
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L42
specialize jordan_rectangle_crt_actual_entry (F) - L43
specialize jordan_rectangle_crt_actual_entry (G) - L44
specialize jordan_rectangle_crt_actual_entry (H) - L45
specialize jordan_rectangle_crt_actual_entry (v) - L46
specialize jordan_rectangle_crt_actual_entry (P) - L47
specialize jordan_rectangle_crt_actual_entry (Q) - L48
specialize jordan_rectangle_crt_actual_entry (R) - L49
specialize jordan_rectangle_crt_actual_entry (T) - L50
specialize jordan_rectangle_crt_actual_entry (u*v) - L51
specialize jordan_rectangle_crt_actual_entry (p)
07Use earlier factsL52–57
08Separate the logical casesL58–67
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L58
cases ha - L59
cases ha_witness - L60
cases ha_witness_witness - L61
cases ha_witness_witness_witness - L62
cases ha_witness_witness_witness_witness - L63
cases ha_witness_witness_witness_witness_witness - L64
cases ha_witness_witness_witness_witness_witness_witness - L65
cases ha_witness_witness_witness_witness_witness_witness_right - L66
cases ha_witness_witness_witness_witness_witness_witness_right_right - L67
cases ha_witness_witness_witness_witness_witness_witness_right_right_right
09Separate the logical casesL68–70
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
10Establish hacrtL71–72
Establish this local claim before using it. It is not an additional assumption.
- L71
have hacrt : JordanCanonicalTupleCRT(m,n,x2,x3,x4,x5,f,g,k)Definitions: JordanCanonicalTupleCRT(m,n,x2,x3,x4,x5,f,g,k)Original native command in the exact edition - L72
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right_left
11Separate the logical casesL73–74
12Establish hbL75–84
Establish this local claim before using it. It is not an additional assumption.
- L75
have hb : ∃ i. ∃ j. ∃ b. ∃ c. ∃ d. ∃ e. Lt(i,u) ∧ (Lt(j,v) ∧ (z = v · i + j ∧ (BetaAt(A,B,i,b) ∧ BetaAt(C,D,i,c) ∧ (BetaAt(E,F,j,d) ∧ BetaAt(G,H,j,e) ∧ (BetaAt(P,Q,z,h) ∧ BetaAt(R,T,z,s) ∧ (JordanCanonicalTupleCRT(m,n,b,c,d,e,h,s,k) ∧ JordanPrimitiveTuple(m · n,h,s,k)))))))Definitions: Lt(i,u)Lt(j,v)BetaAt(A,B,i,b)BetaAt(C,D,i,c)BetaAt(E,F,j,d)BetaAt(G,H,j,e)BetaAt(P,Q,z,h)BetaAt(R,T,z,s)JordanCanonicalTupleCRT(m,n,b,c,d,e,h,s,k)JordanPrimitiveTuple(m · n,h,s,k)Original native command in the exact edition - L76
specialize jordan_rectangle_crt_actual_entry (m) - L77
specialize jordan_rectangle_crt_actual_entry (n) - L78
specialize jordan_rectangle_crt_actual_entry (k) - L79
specialize jordan_rectangle_crt_actual_entry (A) - L80
specialize jordan_rectangle_crt_actual_entry (B) - L81
specialize jordan_rectangle_crt_actual_entry (C) - L82
specialize jordan_rectangle_crt_actual_entry (D) - L83
specialize jordan_rectangle_crt_actual_entry (u) - L84
specialize jordan_rectangle_crt_actual_entry (E)
13Use earlier factsL85–94
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L85
specialize jordan_rectangle_crt_actual_entry (F) - L86
specialize jordan_rectangle_crt_actual_entry (G) - L87
specialize jordan_rectangle_crt_actual_entry (H) - L88
specialize jordan_rectangle_crt_actual_entry (v) - L89
specialize jordan_rectangle_crt_actual_entry (P) - L90
specialize jordan_rectangle_crt_actual_entry (Q) - L91
specialize jordan_rectangle_crt_actual_entry (R) - L92
specialize jordan_rectangle_crt_actual_entry (T) - L93
specialize jordan_rectangle_crt_actual_entry (u*v) - L94
specialize jordan_rectangle_crt_actual_entry (z)
14Use earlier factsL95–100
15Separate the logical casesL101–110
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L101
cases hb - L102
cases hb_witness - L103
cases hb_witness_witness - L104
cases hb_witness_witness_witness - L105
cases hb_witness_witness_witness_witness - L106
cases hb_witness_witness_witness_witness_witness - L107
cases hb_witness_witness_witness_witness_witness_witness - L108
cases hb_witness_witness_witness_witness_witness_witness_right - L109
cases hb_witness_witness_witness_witness_witness_witness_right_right - L110
cases hb_witness_witness_witness_witness_witness_witness_right_right_right
16Separate the logical casesL111–113
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
17Establish hbcrtL114–115
Establish this local claim before using it. It is not an additional assumption.
- L114
have hbcrt : JordanCanonicalTupleCRT(m,n,x8,x9,x10,x11,h,s,k)Definitions: JordanCanonicalTupleCRT(m,n,x8,x9,x10,x11,h,s,k)Original native command in the exact edition - L115
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right_left
18Separate the logical casesL116–117
19Establish left0L118–127
Establish this local claim before using it. It is not an additional assumption.
- L118
have left0 : BetaPrefixInto(x2,x3,k,m) ∧ JordanPrimitiveTuple(m,x2,x3,k)Definitions: BetaPrefixInto(x2,x3,k,m)JordanPrimitiveTuple(m,x2,x3,k)Original native command in the exact edition - L119
specialize jordan_enumeration_actual_value (k) - L120
specialize jordan_enumeration_actual_value (m) - L121
specialize jordan_enumeration_actual_value (A) - L122
specialize jordan_enumeration_actual_value (B) - L123
specialize jordan_enumeration_actual_value (C) - L124
specialize jordan_enumeration_actual_value (D) - L125
specialize jordan_enumeration_actual_value (u) - L126
specialize jordan_enumeration_actual_value (x) - L127
specialize jordan_enumeration_actual_value (x2)
20Use earlier factsL128–132
Instantiate or apply named facts and discharge the corresponding proof obligations.
21Separate the logical casesL133–133
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L133
cases left0
22Establish left1L134–143
Establish this local claim before using it. It is not an additional assumption.
- L134
have left1 : BetaPrefixInto(x8,x9,k,m) ∧ JordanPrimitiveTuple(m,x8,x9,k)Definitions: BetaPrefixInto(x8,x9,k,m)JordanPrimitiveTuple(m,x8,x9,k)Original native command in the exact edition - L135
specialize jordan_enumeration_actual_value (k) - L136
specialize jordan_enumeration_actual_value (m) - L137
specialize jordan_enumeration_actual_value (A) - L138
specialize jordan_enumeration_actual_value (B) - L139
specialize jordan_enumeration_actual_value (C) - L140
specialize jordan_enumeration_actual_value (D) - L141
specialize jordan_enumeration_actual_value (u) - L142
specialize jordan_enumeration_actual_value (x6) - L143
specialize jordan_enumeration_actual_value (x8)
23Use earlier factsL144–148
Instantiate or apply named facts and discharge the corresponding proof obligations.
24Separate the logical casesL149–149
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L149
cases left1
25Establish leftsameL150–159
Establish this local claim before using it. It is not an additional assumption.
- L150
have leftsame : IntegerVectorZero(x2,x3,x8,x9,k)Definitions: IntegerVectorZero(x2,x3,x8,x9,k)Original native command in the exact edition - L151
specialize jordan_crt_component_recovery (m) - L152
specialize jordan_crt_component_recovery (x2) - L153
specialize jordan_crt_component_recovery (x3) - L154
specialize jordan_crt_component_recovery (x8) - L155
specialize jordan_crt_component_recovery (x9) - L156
specialize jordan_crt_component_recovery (f) - L157
specialize jordan_crt_component_recovery (g) - L158
specialize jordan_crt_component_recovery (h) - L159
specialize jordan_crt_component_recovery (s)
26Use earlier factsL160–166
27Establish leftindexL167–176
Establish this local claim before using it. It is not an additional assumption.
- L167
have leftindex : x=x6 - L168
specialize jordan_enumeration_distinct (k) - L169
specialize jordan_enumeration_distinct (m) - L170
specialize jordan_enumeration_distinct (A) - L171
specialize jordan_enumeration_distinct (B) - L172
specialize jordan_enumeration_distinct (C) - L173
specialize jordan_enumeration_distinct (D) - L174
specialize jordan_enumeration_distinct (u) - L175
specialize jordan_enumeration_distinct (x) - L176
specialize jordan_enumeration_distinct (x6)
28Use earlier factsL177–186
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L177
specialize jordan_enumeration_distinct (x2) - L178
specialize jordan_enumeration_distinct (x3) - L179
specialize jordan_enumeration_distinct (x8) - L180
specialize jordan_enumeration_distinct (x9) - L181
apply jordan_enumeration_distinct - L182
exact hl - L183
exact ha_witness_witness_witness_witness_witness_witness_left - L184
exact hb_witness_witness_witness_witness_witness_witness_left - L185
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_left - L186
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_left
29Use earlier factsL187–187
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L187
exact leftsame
30Establish right0L188–197
Establish this local claim before using it. It is not an additional assumption.
- L188
have right0 : BetaPrefixInto(x4,x5,k,n) ∧ JordanPrimitiveTuple(n,x4,x5,k)Definitions: BetaPrefixInto(x4,x5,k,n)JordanPrimitiveTuple(n,x4,x5,k)Original native command in the exact edition - L189
specialize jordan_enumeration_actual_value (k) - L190
specialize jordan_enumeration_actual_value (n) - L191
specialize jordan_enumeration_actual_value (E) - L192
specialize jordan_enumeration_actual_value (F) - L193
specialize jordan_enumeration_actual_value (G) - L194
specialize jordan_enumeration_actual_value (H) - L195
specialize jordan_enumeration_actual_value (v) - L196
specialize jordan_enumeration_actual_value (x1) - L197
specialize jordan_enumeration_actual_value (x4)
31Use earlier factsL198–202
Instantiate or apply named facts and discharge the corresponding proof obligations.
32Separate the logical casesL203–203
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L203
cases right0
33Establish right1L204–213
Establish this local claim before using it. It is not an additional assumption.
- L204
have right1 : BetaPrefixInto(x10,x11,k,n) ∧ JordanPrimitiveTuple(n,x10,x11,k)Definitions: BetaPrefixInto(x10,x11,k,n)JordanPrimitiveTuple(n,x10,x11,k)Original native command in the exact edition - L205
specialize jordan_enumeration_actual_value (k) - L206
specialize jordan_enumeration_actual_value (n) - L207
specialize jordan_enumeration_actual_value (E) - L208
specialize jordan_enumeration_actual_value (F) - L209
specialize jordan_enumeration_actual_value (G) - L210
specialize jordan_enumeration_actual_value (H) - L211
specialize jordan_enumeration_actual_value (v) - L212
specialize jordan_enumeration_actual_value (x7) - L213
specialize jordan_enumeration_actual_value (x10)
34Use earlier factsL214–218
Instantiate or apply named facts and discharge the corresponding proof obligations.
35Separate the logical casesL219–219
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L219
cases right1
36Establish rightsameL220–229
Establish this local claim before using it. It is not an additional assumption.
- L220
have rightsame : IntegerVectorZero(x4,x5,x10,x11,k)Definitions: IntegerVectorZero(x4,x5,x10,x11,k)Original native command in the exact edition - L221
specialize jordan_crt_component_recovery (n) - L222
specialize jordan_crt_component_recovery (x4) - L223
specialize jordan_crt_component_recovery (x5) - L224
specialize jordan_crt_component_recovery (x10) - L225
specialize jordan_crt_component_recovery (x11) - L226
specialize jordan_crt_component_recovery (f) - L227
specialize jordan_crt_component_recovery (g) - L228
specialize jordan_crt_component_recovery (h) - L229
specialize jordan_crt_component_recovery (s)
37Use earlier factsL230–236
38Establish rightindexL237–246
Establish this local claim before using it. It is not an additional assumption.
- L237
have rightindex : x1=x7 - L238
specialize jordan_enumeration_distinct (k) - L239
specialize jordan_enumeration_distinct (n) - L240
specialize jordan_enumeration_distinct (E) - L241
specialize jordan_enumeration_distinct (F) - L242
specialize jordan_enumeration_distinct (G) - L243
specialize jordan_enumeration_distinct (H) - L244
specialize jordan_enumeration_distinct (v) - L245
specialize jordan_enumeration_distinct (x1) - L246
specialize jordan_enumeration_distinct (x7)
39Use earlier factsL247–256
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L247
specialize jordan_enumeration_distinct (x4) - L248
specialize jordan_enumeration_distinct (x5) - L249
specialize jordan_enumeration_distinct (x10) - L250
specialize jordan_enumeration_distinct (x11) - L251
apply jordan_enumeration_distinct - L252
exact hh - L253
exact ha_witness_witness_witness_witness_witness_witness_right_left - L254
exact hb_witness_witness_witness_witness_witness_witness_right_left - L255
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_right_left - L256
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_right_left
40Use earlier factsL257–257
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L257
exact rightsame
41Establish hposL258–265
Establish this local claim before using it. It is not an additional assumption.
Original defined command ledger · 265 lines
- 0001
intro m - 0002
intro n - 0003
intro k - 0004
intro A - 0005
intro B - 0006
intro C - 0007
intro D - 0008
intro u - 0009
intro E - 0010
intro F - 0011
intro G - 0012
intro H - 0013
intro v - 0014
intro P - 0015
intro Q - 0016
intro R - 0017
intro T - 0018
intro p - 0019
intro z - 0020
intro f - 0021
intro g - 0022
intro h - 0023
intro s - 0024
intro hl - 0025
intro hh - 0026
intro hr - 0027
intro hp - 0028
intro hz - 0029
intro he - 0030
intro hf - 0031
intro hsame - 0032
have ha : ∃ i. ∃ j. ∃ b. ∃ c. ∃ d. ∃ e. Lt(i,u) ∧ (Lt(j,v) ∧ (p = v · i + j ∧ (BetaAt(A,B,i,b) ∧ BetaAt(C,D,i,c) ∧ (BetaAt(E,F,j,d) ∧ BetaAt(G,H,j,e) ∧ (BetaAt(P,Q,p,f) ∧ BetaAt(R,T,p,g) ∧ (JordanCanonicalTupleCRT(m,n,b,c,d,e,f,g,k) ∧ JordanPrimitiveTuple(m · n,f,g,k))))))) - 0033
specialize jordan_rectangle_crt_actual_entry (m) - 0034
specialize jordan_rectangle_crt_actual_entry (n) - 0035
specialize jordan_rectangle_crt_actual_entry (k) - 0036
specialize jordan_rectangle_crt_actual_entry (A) - 0037
specialize jordan_rectangle_crt_actual_entry (B) - 0038
specialize jordan_rectangle_crt_actual_entry (C) - 0039
specialize jordan_rectangle_crt_actual_entry (D) - 0040
specialize jordan_rectangle_crt_actual_entry (u) - 0041
specialize jordan_rectangle_crt_actual_entry (E) - 0042
specialize jordan_rectangle_crt_actual_entry (F) - 0043
specialize jordan_rectangle_crt_actual_entry (G) - 0044
specialize jordan_rectangle_crt_actual_entry (H) - 0045
specialize jordan_rectangle_crt_actual_entry (v) - 0046
specialize jordan_rectangle_crt_actual_entry (P) - 0047
specialize jordan_rectangle_crt_actual_entry (Q) - 0048
specialize jordan_rectangle_crt_actual_entry (R) - 0049
specialize jordan_rectangle_crt_actual_entry (T) - 0050
specialize jordan_rectangle_crt_actual_entry (u*v) - 0051
specialize jordan_rectangle_crt_actual_entry (p) - 0052
specialize jordan_rectangle_crt_actual_entry (f) - 0053
specialize jordan_rectangle_crt_actual_entry (g) - 0054
apply jordan_rectangle_crt_actual_entry - 0055
exact hr - 0056
exact hp - 0057
exact he - 0058
cases ha - 0059
cases ha_witness - 0060
cases ha_witness_witness - 0061
cases ha_witness_witness_witness - 0062
cases ha_witness_witness_witness_witness - 0063
cases ha_witness_witness_witness_witness_witness - 0064
cases ha_witness_witness_witness_witness_witness_witness - 0065
cases ha_witness_witness_witness_witness_witness_witness_right - 0066
cases ha_witness_witness_witness_witness_witness_witness_right_right - 0067
cases ha_witness_witness_witness_witness_witness_witness_right_right_right - 0068
cases ha_witness_witness_witness_witness_witness_witness_right_right_right_right - 0069
cases ha_witness_witness_witness_witness_witness_witness_right_right_right_right_right - 0070
cases ha_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right - 0071
have hacrt : JordanCanonicalTupleCRT(m,n,x2,x3,x4,x5,f,g,k) - 0072
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right_left - 0073
cases hacrt - 0074
cases hacrt_right - 0075
have hb : ∃ i. ∃ j. ∃ b. ∃ c. ∃ d. ∃ e. Lt(i,u) ∧ (Lt(j,v) ∧ (z = v · i + j ∧ (BetaAt(A,B,i,b) ∧ BetaAt(C,D,i,c) ∧ (BetaAt(E,F,j,d) ∧ BetaAt(G,H,j,e) ∧ (BetaAt(P,Q,z,h) ∧ BetaAt(R,T,z,s) ∧ (JordanCanonicalTupleCRT(m,n,b,c,d,e,h,s,k) ∧ JordanPrimitiveTuple(m · n,h,s,k))))))) - 0076
specialize jordan_rectangle_crt_actual_entry (m) - 0077
specialize jordan_rectangle_crt_actual_entry (n) - 0078
specialize jordan_rectangle_crt_actual_entry (k) - 0079
specialize jordan_rectangle_crt_actual_entry (A) - 0080
specialize jordan_rectangle_crt_actual_entry (B) - 0081
specialize jordan_rectangle_crt_actual_entry (C) - 0082
specialize jordan_rectangle_crt_actual_entry (D) - 0083
specialize jordan_rectangle_crt_actual_entry (u) - 0084
specialize jordan_rectangle_crt_actual_entry (E) - 0085
specialize jordan_rectangle_crt_actual_entry (F) - 0086
specialize jordan_rectangle_crt_actual_entry (G) - 0087
specialize jordan_rectangle_crt_actual_entry (H) - 0088
specialize jordan_rectangle_crt_actual_entry (v) - 0089
specialize jordan_rectangle_crt_actual_entry (P) - 0090
specialize jordan_rectangle_crt_actual_entry (Q) - 0091
specialize jordan_rectangle_crt_actual_entry (R) - 0092
specialize jordan_rectangle_crt_actual_entry (T) - 0093
specialize jordan_rectangle_crt_actual_entry (u*v) - 0094
specialize jordan_rectangle_crt_actual_entry (z) - 0095
specialize jordan_rectangle_crt_actual_entry (h) - 0096
specialize jordan_rectangle_crt_actual_entry (s) - 0097
apply jordan_rectangle_crt_actual_entry - 0098
exact hr - 0099
exact hz - 0100
exact hf - 0101
cases hb - 0102
cases hb_witness - 0103
cases hb_witness_witness - 0104
cases hb_witness_witness_witness - 0105
cases hb_witness_witness_witness_witness - 0106
cases hb_witness_witness_witness_witness_witness - 0107
cases hb_witness_witness_witness_witness_witness_witness - 0108
cases hb_witness_witness_witness_witness_witness_witness_right - 0109
cases hb_witness_witness_witness_witness_witness_witness_right_right - 0110
cases hb_witness_witness_witness_witness_witness_witness_right_right_right - 0111
cases hb_witness_witness_witness_witness_witness_witness_right_right_right_right - 0112
cases hb_witness_witness_witness_witness_witness_witness_right_right_right_right_right - 0113
cases hb_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right - 0114
have hbcrt : JordanCanonicalTupleCRT(m,n,x8,x9,x10,x11,h,s,k) - 0115
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right_left - 0116
cases hbcrt - 0117
cases hbcrt_right - 0118
have left0 : BetaPrefixInto(x2,x3,k,m) ∧ JordanPrimitiveTuple(m,x2,x3,k) - 0119
specialize jordan_enumeration_actual_value (k) - 0120
specialize jordan_enumeration_actual_value (m) - 0121
specialize jordan_enumeration_actual_value (A) - 0122
specialize jordan_enumeration_actual_value (B) - 0123
specialize jordan_enumeration_actual_value (C) - 0124
specialize jordan_enumeration_actual_value (D) - 0125
specialize jordan_enumeration_actual_value (u) - 0126
specialize jordan_enumeration_actual_value (x) - 0127
specialize jordan_enumeration_actual_value (x2) - 0128
specialize jordan_enumeration_actual_value (x3) - 0129
apply jordan_enumeration_actual_value - 0130
exact hl - 0131
exact ha_witness_witness_witness_witness_witness_witness_left - 0132
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_left - 0133
cases left0 - 0134
have left1 : BetaPrefixInto(x8,x9,k,m) ∧ JordanPrimitiveTuple(m,x8,x9,k) - 0135
specialize jordan_enumeration_actual_value (k) - 0136
specialize jordan_enumeration_actual_value (m) - 0137
specialize jordan_enumeration_actual_value (A) - 0138
specialize jordan_enumeration_actual_value (B) - 0139
specialize jordan_enumeration_actual_value (C) - 0140
specialize jordan_enumeration_actual_value (D) - 0141
specialize jordan_enumeration_actual_value (u) - 0142
specialize jordan_enumeration_actual_value (x6) - 0143
specialize jordan_enumeration_actual_value (x8) - 0144
specialize jordan_enumeration_actual_value (x9) - 0145
apply jordan_enumeration_actual_value - 0146
exact hl - 0147
exact hb_witness_witness_witness_witness_witness_witness_left - 0148
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_left - 0149
cases left1 - 0150
have leftsame : IntegerVectorZero(x2,x3,x8,x9,k) - 0151
specialize jordan_crt_component_recovery (m) - 0152
specialize jordan_crt_component_recovery (x2) - 0153
specialize jordan_crt_component_recovery (x3) - 0154
specialize jordan_crt_component_recovery (x8) - 0155
specialize jordan_crt_component_recovery (x9) - 0156
specialize jordan_crt_component_recovery (f) - 0157
specialize jordan_crt_component_recovery (g) - 0158
specialize jordan_crt_component_recovery (h) - 0159
specialize jordan_crt_component_recovery (s) - 0160
specialize jordan_crt_component_recovery (k) - 0161
apply jordan_crt_component_recovery - 0162
exact left0_left - 0163
exact left1_left - 0164
exact hacrt_right_left - 0165
exact hbcrt_right_left - 0166
exact hsame - 0167
have leftindex : x=x6 - 0168
specialize jordan_enumeration_distinct (k) - 0169
specialize jordan_enumeration_distinct (m) - 0170
specialize jordan_enumeration_distinct (A) - 0171
specialize jordan_enumeration_distinct (B) - 0172
specialize jordan_enumeration_distinct (C) - 0173
specialize jordan_enumeration_distinct (D) - 0174
specialize jordan_enumeration_distinct (u) - 0175
specialize jordan_enumeration_distinct (x) - 0176
specialize jordan_enumeration_distinct (x6) - 0177
specialize jordan_enumeration_distinct (x2) - 0178
specialize jordan_enumeration_distinct (x3) - 0179
specialize jordan_enumeration_distinct (x8) - 0180
specialize jordan_enumeration_distinct (x9) - 0181
apply jordan_enumeration_distinct - 0182
exact hl - 0183
exact ha_witness_witness_witness_witness_witness_witness_left - 0184
exact hb_witness_witness_witness_witness_witness_witness_left - 0185
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_left - 0186
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_left - 0187
exact leftsame - 0188
have right0 : BetaPrefixInto(x4,x5,k,n) ∧ JordanPrimitiveTuple(n,x4,x5,k) - 0189
specialize jordan_enumeration_actual_value (k) - 0190
specialize jordan_enumeration_actual_value (n) - 0191
specialize jordan_enumeration_actual_value (E) - 0192
specialize jordan_enumeration_actual_value (F) - 0193
specialize jordan_enumeration_actual_value (G) - 0194
specialize jordan_enumeration_actual_value (H) - 0195
specialize jordan_enumeration_actual_value (v) - 0196
specialize jordan_enumeration_actual_value (x1) - 0197
specialize jordan_enumeration_actual_value (x4) - 0198
specialize jordan_enumeration_actual_value (x5) - 0199
apply jordan_enumeration_actual_value - 0200
exact hh - 0201
exact ha_witness_witness_witness_witness_witness_witness_right_left - 0202
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_right_left - 0203
cases right0 - 0204
have right1 : BetaPrefixInto(x10,x11,k,n) ∧ JordanPrimitiveTuple(n,x10,x11,k) - 0205
specialize jordan_enumeration_actual_value (k) - 0206
specialize jordan_enumeration_actual_value (n) - 0207
specialize jordan_enumeration_actual_value (E) - 0208
specialize jordan_enumeration_actual_value (F) - 0209
specialize jordan_enumeration_actual_value (G) - 0210
specialize jordan_enumeration_actual_value (H) - 0211
specialize jordan_enumeration_actual_value (v) - 0212
specialize jordan_enumeration_actual_value (x7) - 0213
specialize jordan_enumeration_actual_value (x10) - 0214
specialize jordan_enumeration_actual_value (x11) - 0215
apply jordan_enumeration_actual_value - 0216
exact hh - 0217
exact hb_witness_witness_witness_witness_witness_witness_right_left - 0218
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_right_left - 0219
cases right1 - 0220
have rightsame : IntegerVectorZero(x4,x5,x10,x11,k) - 0221
specialize jordan_crt_component_recovery (n) - 0222
specialize jordan_crt_component_recovery (x4) - 0223
specialize jordan_crt_component_recovery (x5) - 0224
specialize jordan_crt_component_recovery (x10) - 0225
specialize jordan_crt_component_recovery (x11) - 0226
specialize jordan_crt_component_recovery (f) - 0227
specialize jordan_crt_component_recovery (g) - 0228
specialize jordan_crt_component_recovery (h) - 0229
specialize jordan_crt_component_recovery (s) - 0230
specialize jordan_crt_component_recovery (k) - 0231
apply jordan_crt_component_recovery - 0232
exact right0_left - 0233
exact right1_left - 0234
exact hacrt_right_right - 0235
exact hbcrt_right_right - 0236
exact hsame - 0237
have rightindex : x1=x7 - 0238
specialize jordan_enumeration_distinct (k) - 0239
specialize jordan_enumeration_distinct (n) - 0240
specialize jordan_enumeration_distinct (E) - 0241
specialize jordan_enumeration_distinct (F) - 0242
specialize jordan_enumeration_distinct (G) - 0243
specialize jordan_enumeration_distinct (H) - 0244
specialize jordan_enumeration_distinct (v) - 0245
specialize jordan_enumeration_distinct (x1) - 0246
specialize jordan_enumeration_distinct (x7) - 0247
specialize jordan_enumeration_distinct (x4) - 0248
specialize jordan_enumeration_distinct (x5) - 0249
specialize jordan_enumeration_distinct (x10) - 0250
specialize jordan_enumeration_distinct (x11) - 0251
apply jordan_enumeration_distinct - 0252
exact hh - 0253
exact ha_witness_witness_witness_witness_witness_witness_right_left - 0254
exact hb_witness_witness_witness_witness_witness_witness_right_left - 0255
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_right_left - 0256
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_right_left - 0257
exact rightsame - 0258
have hpos : p=v*x+x1 - 0259
exact ha_witness_witness_witness_witness_witness_witness_right_right_left - 0260
rewrite leftindex at hpos - 0261
rewrite rightindex at hpos - 0262
trans v*x6+x7 - 0263
exact hpos - 0264
symm - 0265
exact hb_witness_witness_witness_witness_witness_witness_right_right_left