Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.
Exact expanded first-order arithmetic statement
forall k s h e H E u U v V a A b B. (exists cfc_tail_functional_first. ((exists cfc_state_functional_firstinitial. ((exists cfc_left_functional_firstinitialcode cfc_right_functional_firstinitialcode cfc_matrix_functional_firstinitialcode. ((cfc_left_functional_firstinitialcode = ((1) + (0)) * S ((1) + (0)) + ((0) + (0))) /\ ((cfc_right_functional_firstinitialcode = ((0) + (1)) * S ((0) + (1)) + ((1) + (1))) /\ ((cfc_matrix_functional_firstinitialcode = ((cfc_left_functional_firstinitialcode) + (cfc_right_functional_firstinitialcode)) * S ((cfc_left_functional_firstinitialcode) + (cfc_right_functional_firstinitialcode)) + ((cfc_right_functional_firstinitialcode) + (cfc_right_functional_firstinitialcode))) /\ ((cfc_state_functional_firstinitial) = ((cfc_tail_functional_first) + (cfc_matrix_functional_firstinitialcode)) * S ((cfc_tail_functional_first) + (cfc_matrix_functional_firstinitialcode)) + ((cfc_matrix_functional_firstinitialcode) + (cfc_matrix_functional_firstinitialcode))))))) /\ (((exists ff_h_functional_firstinitialentry. ff_h_functional_firstinitialentry + S (cfc_state_functional_firstinitial) = S ((S (0)) * e)) /\ exists ff_q_functional_firstinitialentry. h = ff_q_functional_firstinitialentry * S ((S (0)) * e) + (cfc_state_functional_firstinitial))))) /\ ((exists cfc_state_functional_firstterminal. ((exists cfc_left_functional_firstterminalcode cfc_right_functional_firstterminalcode cfc_matrix_functional_firstterminalcode. ((cfc_left_functional_firstterminalcode = ((u) + (U)) * S ((u) + (U)) + ((U) + (U))) /\ ((cfc_right_functional_firstterminalcode = ((v) + (V)) * S ((v) + (V)) + ((V) + (V))) /\ ((cfc_matrix_functional_firstterminalcode = ((cfc_left_functional_firstterminalcode) + (cfc_right_functional_firstterminalcode)) * S ((cfc_left_functional_firstterminalcode) + (cfc_right_functional_firstterminalcode)) + ((cfc_right_functional_firstterminalcode) + (cfc_right_functional_firstterminalcode))) /\ ((cfc_state_functional_firstterminal) = ((s) + (cfc_matrix_functional_firstterminalcode)) * S ((s) + (cfc_matrix_functional_firstterminalcode)) + ((cfc_matrix_functional_firstterminalcode) + (cfc_matrix_functional_firstterminalcode))))))) /\ (((exists ff_h_functional_firstterminalentry. ff_h_functional_firstterminalentry + S (cfc_state_functional_firstterminal) = S ((S (k)) * e)) /\ exists ff_q_functional_firstterminalentry. h = ff_q_functional_firstterminalentry * S ((S (k)) * e) + (cfc_state_functional_firstterminal))))) /\ (forall cfc_index_functional_first. (exists cfba_gap_functional_firstbound. cfba_gap_functional_firstbound + S (cfc_index_functional_first) = (k)) -> exists cfc_old_functional_first cfc_a_functional_first cfc_b_functional_first cfc_c_functional_first cfc_d_functional_first cfc_new_functional_first cfc_quotient_functional_first. ((exists cfc_state_functional_firstprevious. ((exists cfc_left_functional_firstpreviouscode cfc_right_functional_firstpreviouscode cfc_matrix_functional_firstpreviouscode. ((cfc_left_functional_firstpreviouscode = ((cfc_a_functional_first) + (cfc_b_functional_first)) * S ((cfc_a_functional_first) + (cfc_b_functional_first)) + ((cfc_b_functional_first) + (cfc_b_functional_first))) /\ ((cfc_right_functional_firstpreviouscode = ((cfc_c_functional_first) + (cfc_d_functional_first)) * S ((cfc_c_functional_first) + (cfc_d_functional_first)) + ((cfc_d_functional_first) + (cfc_d_functional_first))) /\ ((cfc_matrix_functional_firstpreviouscode = ((cfc_left_functional_firstpreviouscode) + (cfc_right_functional_firstpreviouscode)) * S ((cfc_left_functional_firstpreviouscode) + (cfc_right_functional_firstpreviouscode)) + ((cfc_right_functional_firstpreviouscode) + (cfc_right_functional_firstpreviouscode))) /\ ((cfc_state_functional_firstprevious) = ((cfc_old_functional_first) + (cfc_matrix_functional_firstpreviouscode)) * S ((cfc_old_functional_first) + (cfc_matrix_functional_firstpreviouscode)) + ((cfc_matrix_functional_firstpreviouscode) + (cfc_matrix_functional_firstpreviouscode))))))) /\ (((exists ff_h_functional_firstpreviousentry. ff_h_functional_firstpreviousentry + S (cfc_state_functional_firstprevious) = S ((S (cfc_index_functional_first)) * e)) /\ exists ff_q_functional_firstpreviousentry. h = ff_q_functional_firstpreviousentry * S ((S (cfc_index_functional_first)) * e) + (cfc_state_functional_firstprevious))))) /\ ((exists cfc_state_functional_firstfollowing. ((exists cfc_left_functional_firstfollowingcode cfc_right_functional_firstfollowingcode cfc_matrix_functional_firstfollowingcode. ((cfc_left_functional_firstfollowingcode = (((cfc_quotient_functional_first * cfc_a_functional_first + cfc_c_functional_first)) + ((cfc_quotient_functional_first * cfc_b_functional_first + cfc_d_functional_first))) * S (((cfc_quotient_functional_first * cfc_a_functional_first + cfc_c_functional_first)) + ((cfc_quotient_functional_first * cfc_b_functional_first + cfc_d_functional_first))) + (((cfc_quotient_functional_first * cfc_b_functional_first + cfc_d_functional_first)) + ((cfc_quotient_functional_first * cfc_b_functional_first + cfc_d_functional_first)))) /\ ((cfc_right_functional_firstfollowingcode = ((cfc_a_functional_first) + (cfc_b_functional_first)) * S ((cfc_a_functional_first) + (cfc_b_functional_first)) + ((cfc_b_functional_first) + (cfc_b_functional_first))) /\ ((cfc_matrix_functional_firstfollowingcode = ((cfc_left_functional_firstfollowingcode) + (cfc_right_functional_firstfollowingcode)) * S ((cfc_left_functional_firstfollowingcode) + (cfc_right_functional_firstfollowingcode)) + ((cfc_right_functional_firstfollowingcode) + (cfc_right_functional_firstfollowingcode))) /\ ((cfc_state_functional_firstfollowing) = ((cfc_new_functional_first) + (cfc_matrix_functional_firstfollowingcode)) * S ((cfc_new_functional_first) + (cfc_matrix_functional_firstfollowingcode)) + ((cfc_matrix_functional_firstfollowingcode) + (cfc_matrix_functional_firstfollowingcode))))))) /\ (((exists ff_h_functional_firstfollowingentry. ff_h_functional_firstfollowingentry + S (cfc_state_functional_firstfollowing) = S ((S (S cfc_index_functional_first)) * e)) /\ exists ff_q_functional_firstfollowingentry. h = ff_q_functional_firstfollowingentry * S ((S (S cfc_index_functional_first)) * e) + (cfc_state_functional_firstfollowing))))) /\ (cfc_new_functional_first = S ((cfc_quotient_functional_first + cfc_old_functional_first) * S (cfc_quotient_functional_first + cfc_old_functional_first) + (cfc_old_functional_first + cfc_old_functional_first))))))))) -> (exists cfc_tail_functional_second. ((exists cfc_state_functional_secondinitial. ((exists cfc_left_functional_secondinitialcode cfc_right_functional_secondinitialcode cfc_matrix_functional_secondinitialcode. ((cfc_left_functional_secondinitialcode = ((1) + (0)) * S ((1) + (0)) + ((0) + (0))) /\ ((cfc_right_functional_secondinitialcode = ((0) + (1)) * S ((0) + (1)) + ((1) + (1))) /\ ((cfc_matrix_functional_secondinitialcode = ((cfc_left_functional_secondinitialcode) + (cfc_right_functional_secondinitialcode)) * S ((cfc_left_functional_secondinitialcode) + (cfc_right_functional_secondinitialcode)) + ((cfc_right_functional_secondinitialcode) + (cfc_right_functional_secondinitialcode))) /\ ((cfc_state_functional_secondinitial) = ((cfc_tail_functional_second) + (cfc_matrix_functional_secondinitialcode)) * S ((cfc_tail_functional_second) + (cfc_matrix_functional_secondinitialcode)) + ((cfc_matrix_functional_secondinitialcode) + (cfc_matrix_functional_secondinitialcode))))))) /\ (((exists ff_h_functional_secondinitialentry. ff_h_functional_secondinitialentry + S (cfc_state_functional_secondinitial) = S ((S (0)) * E)) /\ exists ff_q_functional_secondinitialentry. H = ff_q_functional_secondinitialentry * S ((S (0)) * E) + (cfc_state_functional_secondinitial))))) /\ ((exists cfc_state_functional_secondterminal. ((exists cfc_left_functional_secondterminalcode cfc_right_functional_secondterminalcode cfc_matrix_functional_secondterminalcode. ((cfc_left_functional_secondterminalcode = ((a) + (A)) * S ((a) + (A)) + ((A) + (A))) /\ ((cfc_right_functional_secondterminalcode = ((b) + (B)) * S ((b) + (B)) + ((B) + (B))) /\ ((cfc_matrix_functional_secondterminalcode = ((cfc_left_functional_secondterminalcode) + (cfc_right_functional_secondterminalcode)) * S ((cfc_left_functional_secondterminalcode) + (cfc_right_functional_secondterminalcode)) + ((cfc_right_functional_secondterminalcode) + (cfc_right_functional_secondterminalcode))) /\ ((cfc_state_functional_secondterminal) = ((s) + (cfc_matrix_functional_secondterminalcode)) * S ((s) + (cfc_matrix_functional_secondterminalcode)) + ((cfc_matrix_functional_secondterminalcode) + (cfc_matrix_functional_secondterminalcode))))))) /\ (((exists ff_h_functional_secondterminalentry. ff_h_functional_secondterminalentry + S (cfc_state_functional_secondterminal) = S ((S (k)) * E)) /\ exists ff_q_functional_secondterminalentry. H = ff_q_functional_secondterminalentry * S ((S (k)) * E) + (cfc_state_functional_secondterminal))))) /\ (forall cfc_index_functional_second. (exists cfba_gap_functional_secondbound. cfba_gap_functional_secondbound + S (cfc_index_functional_second) = (k)) -> exists cfc_old_functional_second cfc_a_functional_second cfc_b_functional_second cfc_c_functional_second cfc_d_functional_second cfc_new_functional_second cfc_quotient_functional_second. ((exists cfc_state_functional_secondprevious. ((exists cfc_left_functional_secondpreviouscode cfc_right_functional_secondpreviouscode cfc_matrix_functional_secondpreviouscode. ((cfc_left_functional_secondpreviouscode = ((cfc_a_functional_second) + (cfc_b_functional_second)) * S ((cfc_a_functional_second) + (cfc_b_functional_second)) + ((cfc_b_functional_second) + (cfc_b_functional_second))) /\ ((cfc_right_functional_secondpreviouscode = ((cfc_c_functional_second) + (cfc_d_functional_second)) * S ((cfc_c_functional_second) + (cfc_d_functional_second)) + ((cfc_d_functional_second) + (cfc_d_functional_second))) /\ ((cfc_matrix_functional_secondpreviouscode = ((cfc_left_functional_secondpreviouscode) + (cfc_right_functional_secondpreviouscode)) * S ((cfc_left_functional_secondpreviouscode) + (cfc_right_functional_secondpreviouscode)) + ((cfc_right_functional_secondpreviouscode) + (cfc_right_functional_secondpreviouscode))) /\ ((cfc_state_functional_secondprevious) = ((cfc_old_functional_second) + (cfc_matrix_functional_secondpreviouscode)) * S ((cfc_old_functional_second) + (cfc_matrix_functional_secondpreviouscode)) + ((cfc_matrix_functional_secondpreviouscode) + (cfc_matrix_functional_secondpreviouscode))))))) /\ (((exists ff_h_functional_secondpreviousentry. ff_h_functional_secondpreviousentry + S (cfc_state_functional_secondprevious) = S ((S (cfc_index_functional_second)) * E)) /\ exists ff_q_functional_secondpreviousentry. H = ff_q_functional_secondpreviousentry * S ((S (cfc_index_functional_second)) * E) + (cfc_state_functional_secondprevious))))) /\ ((exists cfc_state_functional_secondfollowing. ((exists cfc_left_functional_secondfollowingcode cfc_right_functional_secondfollowingcode cfc_matrix_functional_secondfollowingcode. ((cfc_left_functional_secondfollowingcode = (((cfc_quotient_functional_second * cfc_a_functional_second + cfc_c_functional_second)) + ((cfc_quotient_functional_second * cfc_b_functional_second + cfc_d_functional_second))) * S (((cfc_quotient_functional_second * cfc_a_functional_second + cfc_c_functional_second)) + ((cfc_quotient_functional_second * cfc_b_functional_second + cfc_d_functional_second))) + (((cfc_quotient_functional_second * cfc_b_functional_second + cfc_d_functional_second)) + ((cfc_quotient_functional_second * cfc_b_functional_second + cfc_d_functional_second)))) /\ ((cfc_right_functional_secondfollowingcode = ((cfc_a_functional_second) + (cfc_b_functional_second)) * S ((cfc_a_functional_second) + (cfc_b_functional_second)) + ((cfc_b_functional_second) + (cfc_b_functional_second))) /\ ((cfc_matrix_functional_secondfollowingcode = ((cfc_left_functional_secondfollowingcode) + (cfc_right_functional_secondfollowingcode)) * S ((cfc_left_functional_secondfollowingcode) + (cfc_right_functional_secondfollowingcode)) + ((cfc_right_functional_secondfollowingcode) + (cfc_right_functional_secondfollowingcode))) /\ ((cfc_state_functional_secondfollowing) = ((cfc_new_functional_second) + (cfc_matrix_functional_secondfollowingcode)) * S ((cfc_new_functional_second) + (cfc_matrix_functional_secondfollowingcode)) + ((cfc_matrix_functional_secondfollowingcode) + (cfc_matrix_functional_secondfollowingcode))))))) /\ (((exists ff_h_functional_secondfollowingentry. ff_h_functional_secondfollowingentry + S (cfc_state_functional_secondfollowing) = S ((S (S cfc_index_functional_second)) * E)) /\ exists ff_q_functional_secondfollowingentry. H = ff_q_functional_secondfollowingentry * S ((S (S cfc_index_functional_second)) * E) + (cfc_state_functional_secondfollowing))))) /\ (cfc_new_functional_second = S ((cfc_quotient_functional_second + cfc_old_functional_second) * S (cfc_quotient_functional_second + cfc_old_functional_second) + (cfc_old_functional_second + cfc_old_functional_second))))))))) -> ((u = a) /\ ((U = A) /\ ((v = b) /\ (V = B))))Constructive proof overview
Generated structural guide
HA induction proves the genuine quotient-prefix matrix is independent of its beta certificate and has unique actual entries for every tagged list and index.
The unchanged tactic script uses 4 declared prerequisites and contains 195 exact native proof lines.
Alpha v34 checked-use · first admitted v29 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
BA0032 cf_convergent_matrix_empty_elimination BA0033 cf_convergent_matrix_successor_elimination cell_functional Alpha theorem; checked-use authorized BA0035 cf_convergent_matrix_list_transportDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
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 (3)
01Induction on kL1–10
02Fix variables and assumptionsL11–16
03Establish hleftL17–26
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply cf convergent matrix empty elimination.
- L17
have hleft : ((u = 1) /\ ((U = 0) /\ ((v = 0) /\ (V = 1)))) - L18
specialize cf_convergent_matrix_empty_elimination (s) - L19
specialize cf_convergent_matrix_empty_elimination (h) - L20
specialize cf_convergent_matrix_empty_elimination (e) - L21
specialize cf_convergent_matrix_empty_elimination (u) - L22
specialize cf_convergent_matrix_empty_elimination (U) - L23
specialize cf_convergent_matrix_empty_elimination (v) - L24
specialize cf_convergent_matrix_empty_elimination (V) - L25
apply cf_convergent_matrix_empty_elimination - L26
exact hfirst
04Establish hrightL27–36
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply cf convergent matrix empty elimination.
- L27
have hright : ((a = 1) /\ ((A = 0) /\ ((b = 0) /\ (B = 1)))) - L28
specialize cf_convergent_matrix_empty_elimination (s) - L29
specialize cf_convergent_matrix_empty_elimination (H) - L30
specialize cf_convergent_matrix_empty_elimination (E) - L31
specialize cf_convergent_matrix_empty_elimination (a) - L32
specialize cf_convergent_matrix_empty_elimination (A) - L33
specialize cf_convergent_matrix_empty_elimination (b) - L34
specialize cf_convergent_matrix_empty_elimination (B) - L35
apply cf_convergent_matrix_empty_elimination - L36
exact hsecond
05Separate the logical casesL37–43
06Calculate and transport equalitiesL44–44
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L44
trans 1
07Use earlier factsL45–45
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L45
exact hleft_left
08Calculate and transport equalitiesL46–46
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L46
symm
09Use earlier factsL47–47
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L47
exact hright_left
10Separate the logical casesL48–48
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L48
split
11Calculate and transport equalitiesL49–49
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L49
trans 0
12Use earlier factsL50–50
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L50
exact hleft_right_left
13Calculate and transport equalitiesL51–51
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L51
symm
14Use earlier factsL52–52
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L52
exact hright_right_left
15Separate the logical casesL53–53
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L53
split
16Calculate and transport equalitiesL54–54
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L54
trans 0
17Use earlier factsL55–55
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L55
exact hleft_right_right_left
18Calculate and transport equalitiesL56–56
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L56
symm
19Use earlier factsL57–57
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L57
exact hright_right_right_left
20Calculate and transport equalitiesL58–58
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L58
trans 1
21Use earlier factsL59–59
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L59
exact hleft_right_right_right
22Calculate and transport equalitiesL60–60
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L60
symm
23Use earlier factsL61–61
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L61
exact hright_right_right_right
24Fix variables and assumptionsL62–71
25Fix variables and assumptionsL72–76
26Establish hleftL77–86
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply cf convergent matrix successor elimination.
- L77
have hleft : ∃ cfc_tail_functional_left. ∃ cfc_a_functional_left. ∃ cfc_b_functional_left. ∃ cfc_c_functional_left. ∃ cfc_d_functional_left. ∃ cfc_q_functional_left. ConvergentMatrixTrace(cfc_tail_functional_left,h,e,k,cfc_a_functional_left,cfc_b_functional_left,cfc_c_functional_left,cfc_d_functional_left) ∧ (ListCell(s,cfc_q_functional_left,cfc_tail_functional_left) ∧ (u = cfc_q_functional_left · cfc_a_functional_left + cfc_c_functional_left ∧ (U = cfc_q_functional_left · cfc_b_functional_left + cfc_d_functional_left ∧ (v = cfc_a_functional_left ∧ V = cfc_b_functional_left))))Definitions: ListCellConvergentMatrixTrace - L78
specialize cf_convergent_matrix_successor_elimination (s) - L79
specialize cf_convergent_matrix_successor_elimination (h) - L80
specialize cf_convergent_matrix_successor_elimination (e) - L81
specialize cf_convergent_matrix_successor_elimination (k) - L82
specialize cf_convergent_matrix_successor_elimination (u) - L83
specialize cf_convergent_matrix_successor_elimination (U) - L84
specialize cf_convergent_matrix_successor_elimination (v) - L85
specialize cf_convergent_matrix_successor_elimination (V) - L86
apply cf_convergent_matrix_successor_elimination
27Use earlier factsL87–87
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L87
exact hfirst
28Establish hrightL88–97
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply cf convergent matrix successor elimination.
- L88Definitions: ListCellConvergentMatrixTrace
have hright · expand full local formula (606 characters)
have hright : ∃ cfc_tail_functional_right. ∃ cfc_a_functional_right. ∃ cfc_b_functional_right. ∃ cfc_c_functional_right. ∃ cfc_d_functional_right. ∃ cfc_q_functional_right. ConvergentMatrixTrace(cfc_tail_functional_right,H,E,k,cfc_a_functional_right,cfc_b_functional_right,cfc_c_functional_right,cfc_d_functional_right) ∧ (ListCell(s,cfc_q_functional_right,cfc_tail_functional_right) ∧ (a = cfc_q_functional_right · cfc_a_functional_right + cfc_c_functional_right ∧ (A = cfc_q_functional_right · cfc_b_functional_right + cfc_d_functional_right ∧ (b = cfc_a_functional_right ∧ B = cfc_b_functional_right)))) - L89
specialize cf_convergent_matrix_successor_elimination (s) - L90
specialize cf_convergent_matrix_successor_elimination (H) - L91
specialize cf_convergent_matrix_successor_elimination (E) - L92
specialize cf_convergent_matrix_successor_elimination (k) - L93
specialize cf_convergent_matrix_successor_elimination (a) - L94
specialize cf_convergent_matrix_successor_elimination (A) - L95
specialize cf_convergent_matrix_successor_elimination (b) - L96
specialize cf_convergent_matrix_successor_elimination (B) - L97
apply cf_convergent_matrix_successor_elimination
29Use earlier factsL98–98
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L98
exact hsecond
30Separate the logical casesL99–108
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L99
cases hleft - L100
cases hleft_witness - L101
cases hleft_witness_witness - L102
cases hleft_witness_witness_witness - L103
cases hleft_witness_witness_witness_witness - L104
cases hleft_witness_witness_witness_witness_witness - L105
cases hright - L106
cases hright_witness - L107
cases hright_witness_witness - L108
cases hright_witness_witness_witness
31Separate the logical casesL109–118
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L109
cases hright_witness_witness_witness_witness - L110
cases hright_witness_witness_witness_witness_witness - L111
cases hleft_witness_witness_witness_witness_witness_witness - L112
cases hleft_witness_witness_witness_witness_witness_witness_right - L113
cases hleft_witness_witness_witness_witness_witness_witness_right_right - L114
cases hleft_witness_witness_witness_witness_witness_witness_right_right_right - L115
cases hleft_witness_witness_witness_witness_witness_witness_right_right_right_right - L116
cases hright_witness_witness_witness_witness_witness_witness - L117
cases hright_witness_witness_witness_witness_witness_witness_right - L118
cases hright_witness_witness_witness_witness_witness_witness_right_right
32Separate the logical casesL119–120
33Establish hcellL121–129
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply cell functional.
- L121
have hcell : x5 = x11 /\ x = x6 - L122
specialize cell_functional (s) - L123
specialize cell_functional (x5) - L124
specialize cell_functional (x) - L125
specialize cell_functional (x11) - L126
specialize cell_functional (x6) - L127
apply cell_functional - L128
exact hleft_witness_witness_witness_witness_witness_witness_right_left - L129
exact hright_witness_witness_witness_witness_witness_witness_right_left
34Separate the logical casesL130–130
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L130
cases hcell
35Establish hinnerL131–140
Establish this local claim before using it. It is not an additional assumption.
36Use earlier factsL141–150
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L141
specialize IH (x7) - L142
specialize IH (x8) - L143
specialize IH (x9) - L144
specialize IH (x10) - L145
apply IH - L146
exact hleft_witness_witness_witness_witness_witness_witness_left - L147
specialize cf_convergent_matrix_list_transport (x6) - L148
specialize cf_convergent_matrix_list_transport (x) - L149
specialize cf_convergent_matrix_list_transport (H) - L150
specialize cf_convergent_matrix_list_transport (E)
37Use earlier factsL151–156
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L151
specialize cf_convergent_matrix_list_transport (k) - L152
specialize cf_convergent_matrix_list_transport (x7) - L153
specialize cf_convergent_matrix_list_transport (x8) - L154
specialize cf_convergent_matrix_list_transport (x9) - L155
specialize cf_convergent_matrix_list_transport (x10) - L156
apply cf_convergent_matrix_list_transport
38Calculate and transport equalitiesL157–157
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L157
symm
39Use earlier factsL158–159
40Separate the logical casesL160–163
41Calculate and transport equalitiesL164–164
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L164
trans x5 * x1 + x3
42Use earlier factsL165–165
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L165
exact hleft_witness_witness_witness_witness_witness_witness_right_right_left
43Calculate and transport equalitiesL166–171
44Use earlier factsL172–172
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L172
exact hright_witness_witness_witness_witness_witness_witness_right_right_left
45Separate the logical casesL173–173
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L173
split
46Calculate and transport equalitiesL174–174
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L174
trans x5 * x2 + x4
47Use earlier factsL175–175
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L175
exact hleft_witness_witness_witness_witness_witness_witness_right_right_right_left
48Calculate and transport equalitiesL176–181
49Use earlier factsL182–182
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L182
exact hright_witness_witness_witness_witness_witness_witness_right_right_right_left
50Separate the logical casesL183–183
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L183
split
51Calculate and transport equalitiesL184–184
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L184
trans x1
52Use earlier factsL185–185
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L185
exact hleft_witness_witness_witness_witness_witness_witness_right_right_right_right_left
53Calculate and transport equalitiesL186–186
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L186
trans x7
54Use earlier factsL187–187
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L187
exact hinner_left
55Calculate and transport equalitiesL188–188
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L188
symm
56Use earlier factsL189–189
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L189
exact hright_witness_witness_witness_witness_witness_witness_right_right_right_right_left
57Calculate and transport equalitiesL190–190
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L190
trans x2
58Use earlier factsL191–191
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L191
exact hleft_witness_witness_witness_witness_witness_witness_right_right_right_right_right
59Calculate and transport equalitiesL192–192
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L192
trans x8
60Use earlier factsL193–193
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L193
exact hinner_right_left
61Calculate and transport equalitiesL194–194
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L194
symm
62Use earlier factsL195–195
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L195
exact hright_witness_witness_witness_witness_witness_witness_right_right_right_right_right
Original exact command ledger · 195 lines
- 0001
induction k - 0002
intro s - 0003
intro h - 0004
intro e - 0005
intro H - 0006
intro E - 0007
intro u - 0008
intro U - 0009
intro v - 0010
intro V - 0011
intro a - 0012
intro A - 0013
intro b - 0014
intro B - 0015
intro hfirst - 0016
intro hsecond - 0017
have hleft : ((u = 1) /\ ((U = 0) /\ ((v = 0) /\ (V = 1)))) - 0018
specialize cf_convergent_matrix_empty_elimination (s) - 0019
specialize cf_convergent_matrix_empty_elimination (h) - 0020
specialize cf_convergent_matrix_empty_elimination (e) - 0021
specialize cf_convergent_matrix_empty_elimination (u) - 0022
specialize cf_convergent_matrix_empty_elimination (U) - 0023
specialize cf_convergent_matrix_empty_elimination (v) - 0024
specialize cf_convergent_matrix_empty_elimination (V) - 0025
apply cf_convergent_matrix_empty_elimination - 0026
exact hfirst - 0027
have hright : ((a = 1) /\ ((A = 0) /\ ((b = 0) /\ (B = 1)))) - 0028
specialize cf_convergent_matrix_empty_elimination (s) - 0029
specialize cf_convergent_matrix_empty_elimination (H) - 0030
specialize cf_convergent_matrix_empty_elimination (E) - 0031
specialize cf_convergent_matrix_empty_elimination (a) - 0032
specialize cf_convergent_matrix_empty_elimination (A) - 0033
specialize cf_convergent_matrix_empty_elimination (b) - 0034
specialize cf_convergent_matrix_empty_elimination (B) - 0035
apply cf_convergent_matrix_empty_elimination - 0036
exact hsecond - 0037
cases hleft - 0038
cases hleft_right - 0039
cases hleft_right_right - 0040
cases hright - 0041
cases hright_right - 0042
cases hright_right_right - 0043
split - 0044
trans 1 - 0045
exact hleft_left - 0046
symm - 0047
exact hright_left - 0048
split - 0049
trans 0 - 0050
exact hleft_right_left - 0051
symm - 0052
exact hright_right_left - 0053
split - 0054
trans 0 - 0055
exact hleft_right_right_left - 0056
symm - 0057
exact hright_right_right_left - 0058
trans 1 - 0059
exact hleft_right_right_right - 0060
symm - 0061
exact hright_right_right_right - 0062
intro s - 0063
intro h - 0064
intro e - 0065
intro H - 0066
intro E - 0067
intro u - 0068
intro U - 0069
intro v - 0070
intro V - 0071
intro a - 0072
intro A - 0073
intro b - 0074
intro B - 0075
intro hfirst - 0076
intro hsecond - 0077
have hleft : exists cfc_tail_functional_left cfc_a_functional_left cfc_b_functional_left cfc_c_functional_left cfc_d_functional_left cfc_q_functional_left. ((exists cfc_tail_functional_leftprefix. ((exists cfc_state_functional_leftprefixinitial. ((exists cfc_left_functional_leftprefixinitialcode cfc_right_functional_leftprefixinitialcode cfc_matrix_functional_leftprefixinitialcode. ((cfc_left_functional_leftprefixinitialcode = ((1) + (0)) * S ((1) + (0)) + ((0) + (0))) /\ ((cfc_right_functional_leftprefixinitialcode = ((0) + (1)) * S ((0) + (1)) + ((1) + (1))) /\ ((cfc_matrix_functional_leftprefixinitialcode = ((cfc_left_functional_leftprefixinitialcode) + (cfc_right_functional_leftprefixinitialcode)) * S ((cfc_left_functional_leftprefixinitialcode) + (cfc_right_functional_leftprefixinitialcode)) + ((cfc_right_functional_leftprefixinitialcode) + (cfc_right_functional_leftprefixinitialcode))) /\ ((cfc_state_functional_leftprefixinitial) = ((cfc_tail_functional_leftprefix) + (cfc_matrix_functional_leftprefixinitialcode)) * S ((cfc_tail_functional_leftprefix) + (cfc_matrix_functional_leftprefixinitialcode)) + ((cfc_matrix_functional_leftprefixinitialcode) + (cfc_matrix_functional_leftprefixinitialcode))))))) /\ (((exists ff_h_functional_leftprefixinitialentry. ff_h_functional_leftprefixinitialentry + S (cfc_state_functional_leftprefixinitial) = S ((S (0)) * e)) /\ exists ff_q_functional_leftprefixinitialentry. h = ff_q_functional_leftprefixinitialentry * S ((S (0)) * e) + (cfc_state_functional_leftprefixinitial))))) /\ ((exists cfc_state_functional_leftprefixterminal. ((exists cfc_left_functional_leftprefixterminalcode cfc_right_functional_leftprefixterminalcode cfc_matrix_functional_leftprefixterminalcode. ((cfc_left_functional_leftprefixterminalcode = ((cfc_a_functional_left) + (cfc_b_functional_left)) * S ((cfc_a_functional_left) + (cfc_b_functional_left)) + ((cfc_b_functional_left) + (cfc_b_functional_left))) /\ ((cfc_right_functional_leftprefixterminalcode = ((cfc_c_functional_left) + (cfc_d_functional_left)) * S ((cfc_c_functional_left) + (cfc_d_functional_left)) + ((cfc_d_functional_left) + (cfc_d_functional_left))) /\ ((cfc_matrix_functional_leftprefixterminalcode = ((cfc_left_functional_leftprefixterminalcode) + (cfc_right_functional_leftprefixterminalcode)) * S ((cfc_left_functional_leftprefixterminalcode) + (cfc_right_functional_leftprefixterminalcode)) + ((cfc_right_functional_leftprefixterminalcode) + (cfc_right_functional_leftprefixterminalcode))) /\ ((cfc_state_functional_leftprefixterminal) = ((cfc_tail_functional_left) + (cfc_matrix_functional_leftprefixterminalcode)) * S ((cfc_tail_functional_left) + (cfc_matrix_functional_leftprefixterminalcode)) + ((cfc_matrix_functional_leftprefixterminalcode) + (cfc_matrix_functional_leftprefixterminalcode))))))) /\ (((exists ff_h_functional_leftprefixterminalentry. ff_h_functional_leftprefixterminalentry + S (cfc_state_functional_leftprefixterminal) = S ((S (k)) * e)) /\ exists ff_q_functional_leftprefixterminalentry. h = ff_q_functional_leftprefixterminalentry * S ((S (k)) * e) + (cfc_state_functional_leftprefixterminal))))) /\ (forall cfc_index_functional_leftprefix. (exists cfba_gap_functional_leftprefixbound. cfba_gap_functional_leftprefixbound + S (cfc_index_functional_leftprefix) = (k)) -> exists cfc_old_functional_leftprefix cfc_a_functional_leftprefix cfc_b_functional_leftprefix cfc_c_functional_leftprefix cfc_d_functional_leftprefix cfc_new_functional_leftprefix cfc_quotient_functional_leftprefix. ((exists cfc_state_functional_leftprefixprevious. ((exists cfc_left_functional_leftprefixpreviouscode cfc_right_functional_leftprefixpreviouscode cfc_matrix_functional_leftprefixpreviouscode. ((cfc_left_functional_leftprefixpreviouscode = ((cfc_a_functional_leftprefix) + (cfc_b_functional_leftprefix)) * S ((cfc_a_functional_leftprefix) + (cfc_b_functional_leftprefix)) + ((cfc_b_functional_leftprefix) + (cfc_b_functional_leftprefix))) /\ ((cfc_right_functional_leftprefixpreviouscode = ((cfc_c_functional_leftprefix) + (cfc_d_functional_leftprefix)) * S ((cfc_c_functional_leftprefix) + (cfc_d_functional_leftprefix)) + ((cfc_d_functional_leftprefix) + (cfc_d_functional_leftprefix))) /\ ((cfc_matrix_functional_leftprefixpreviouscode = ((cfc_left_functional_leftprefixpreviouscode) + (cfc_right_functional_leftprefixpreviouscode)) * S ((cfc_left_functional_leftprefixpreviouscode) + (cfc_right_functional_leftprefixpreviouscode)) + ((cfc_right_functional_leftprefixpreviouscode) + (cfc_right_functional_leftprefixpreviouscode))) /\ ((cfc_state_functional_leftprefixprevious) = ((cfc_old_functional_leftprefix) + (cfc_matrix_functional_leftprefixpreviouscode)) * S ((cfc_old_functional_leftprefix) + (cfc_matrix_functional_leftprefixpreviouscode)) + ((cfc_matrix_functional_leftprefixpreviouscode) + (cfc_matrix_functional_leftprefixpreviouscode))))))) /\ (((exists ff_h_functional_leftprefixpreviousentry. ff_h_functional_leftprefixpreviousentry + S (cfc_state_functional_leftprefixprevious) = S ((S (cfc_index_functional_leftprefix)) * e)) /\ exists ff_q_functional_leftprefixpreviousentry. h = ff_q_functional_leftprefixpreviousentry * S ((S (cfc_index_functional_leftprefix)) * e) + (cfc_state_functional_leftprefixprevious))))) /\ ((exists cfc_state_functional_leftprefixfollowing. ((exists cfc_left_functional_leftprefixfollowingcode cfc_right_functional_leftprefixfollowingcode cfc_matrix_functional_leftprefixfollowingcode. ((cfc_left_functional_leftprefixfollowingcode = (((cfc_quotient_functional_leftprefix * cfc_a_functional_leftprefix + cfc_c_functional_leftprefix)) + ((cfc_quotient_functional_leftprefix * cfc_b_functional_leftprefix + cfc_d_functional_leftprefix))) * S (((cfc_quotient_functional_leftprefix * cfc_a_functional_leftprefix + cfc_c_functional_leftprefix)) + ((cfc_quotient_functional_leftprefix * cfc_b_functional_leftprefix + cfc_d_functional_leftprefix))) + (((cfc_quotient_functional_leftprefix * cfc_b_functional_leftprefix + cfc_d_functional_leftprefix)) + ((cfc_quotient_functional_leftprefix * cfc_b_functional_leftprefix + cfc_d_functional_leftprefix)))) /\ ((cfc_right_functional_leftprefixfollowingcode = ((cfc_a_functional_leftprefix) + (cfc_b_functional_leftprefix)) * S ((cfc_a_functional_leftprefix) + (cfc_b_functional_leftprefix)) + ((cfc_b_functional_leftprefix) + (cfc_b_functional_leftprefix))) /\ ((cfc_matrix_functional_leftprefixfollowingcode = ((cfc_left_functional_leftprefixfollowingcode) + (cfc_right_functional_leftprefixfollowingcode)) * S ((cfc_left_functional_leftprefixfollowingcode) + (cfc_right_functional_leftprefixfollowingcode)) + ((cfc_right_functional_leftprefixfollowingcode) + (cfc_right_functional_leftprefixfollowingcode))) /\ ((cfc_state_functional_leftprefixfollowing) = ((cfc_new_functional_leftprefix) + (cfc_matrix_functional_leftprefixfollowingcode)) * S ((cfc_new_functional_leftprefix) + (cfc_matrix_functional_leftprefixfollowingcode)) + ((cfc_matrix_functional_leftprefixfollowingcode) + (cfc_matrix_functional_leftprefixfollowingcode))))))) /\ (((exists ff_h_functional_leftprefixfollowingentry. ff_h_functional_leftprefixfollowingentry + S (cfc_state_functional_leftprefixfollowing) = S ((S (S cfc_index_functional_leftprefix)) * e)) /\ exists ff_q_functional_leftprefixfollowingentry. h = ff_q_functional_leftprefixfollowingentry * S ((S (S cfc_index_functional_leftprefix)) * e) + (cfc_state_functional_leftprefixfollowing))))) /\ (cfc_new_functional_leftprefix = S ((cfc_quotient_functional_leftprefix + cfc_old_functional_leftprefix) * S (cfc_quotient_functional_leftprefix + cfc_old_functional_leftprefix) + (cfc_old_functional_leftprefix + cfc_old_functional_leftprefix))))))))) /\ ((s = S ((cfc_q_functional_left + cfc_tail_functional_left) * S (cfc_q_functional_left + cfc_tail_functional_left) + (cfc_tail_functional_left + cfc_tail_functional_left))) /\ (((u) = cfc_q_functional_left * cfc_a_functional_left + cfc_c_functional_left) /\ (((U) = cfc_q_functional_left * cfc_b_functional_left + cfc_d_functional_left) /\ (((v) = cfc_a_functional_left) /\ ((V) = cfc_b_functional_left)))))) - 0078
specialize cf_convergent_matrix_successor_elimination (s) - 0079
specialize cf_convergent_matrix_successor_elimination (h) - 0080
specialize cf_convergent_matrix_successor_elimination (e) - 0081
specialize cf_convergent_matrix_successor_elimination (k) - 0082
specialize cf_convergent_matrix_successor_elimination (u) - 0083
specialize cf_convergent_matrix_successor_elimination (U) - 0084
specialize cf_convergent_matrix_successor_elimination (v) - 0085
specialize cf_convergent_matrix_successor_elimination (V) - 0086
apply cf_convergent_matrix_successor_elimination - 0087
exact hfirst - 0088
have hright : exists cfc_tail_functional_right cfc_a_functional_right cfc_b_functional_right cfc_c_functional_right cfc_d_functional_right cfc_q_functional_right. ((exists cfc_tail_functional_rightprefix. ((exists cfc_state_functional_rightprefixinitial. ((exists cfc_left_functional_rightprefixinitialcode cfc_right_functional_rightprefixinitialcode cfc_matrix_functional_rightprefixinitialcode. ((cfc_left_functional_rightprefixinitialcode = ((1) + (0)) * S ((1) + (0)) + ((0) + (0))) /\ ((cfc_right_functional_rightprefixinitialcode = ((0) + (1)) * S ((0) + (1)) + ((1) + (1))) /\ ((cfc_matrix_functional_rightprefixinitialcode = ((cfc_left_functional_rightprefixinitialcode) + (cfc_right_functional_rightprefixinitialcode)) * S ((cfc_left_functional_rightprefixinitialcode) + (cfc_right_functional_rightprefixinitialcode)) + ((cfc_right_functional_rightprefixinitialcode) + (cfc_right_functional_rightprefixinitialcode))) /\ ((cfc_state_functional_rightprefixinitial) = ((cfc_tail_functional_rightprefix) + (cfc_matrix_functional_rightprefixinitialcode)) * S ((cfc_tail_functional_rightprefix) + (cfc_matrix_functional_rightprefixinitialcode)) + ((cfc_matrix_functional_rightprefixinitialcode) + (cfc_matrix_functional_rightprefixinitialcode))))))) /\ (((exists ff_h_functional_rightprefixinitialentry. ff_h_functional_rightprefixinitialentry + S (cfc_state_functional_rightprefixinitial) = S ((S (0)) * E)) /\ exists ff_q_functional_rightprefixinitialentry. H = ff_q_functional_rightprefixinitialentry * S ((S (0)) * E) + (cfc_state_functional_rightprefixinitial))))) /\ ((exists cfc_state_functional_rightprefixterminal. ((exists cfc_left_functional_rightprefixterminalcode cfc_right_functional_rightprefixterminalcode cfc_matrix_functional_rightprefixterminalcode. ((cfc_left_functional_rightprefixterminalcode = ((cfc_a_functional_right) + (cfc_b_functional_right)) * S ((cfc_a_functional_right) + (cfc_b_functional_right)) + ((cfc_b_functional_right) + (cfc_b_functional_right))) /\ ((cfc_right_functional_rightprefixterminalcode = ((cfc_c_functional_right) + (cfc_d_functional_right)) * S ((cfc_c_functional_right) + (cfc_d_functional_right)) + ((cfc_d_functional_right) + (cfc_d_functional_right))) /\ ((cfc_matrix_functional_rightprefixterminalcode = ((cfc_left_functional_rightprefixterminalcode) + (cfc_right_functional_rightprefixterminalcode)) * S ((cfc_left_functional_rightprefixterminalcode) + (cfc_right_functional_rightprefixterminalcode)) + ((cfc_right_functional_rightprefixterminalcode) + (cfc_right_functional_rightprefixterminalcode))) /\ ((cfc_state_functional_rightprefixterminal) = ((cfc_tail_functional_right) + (cfc_matrix_functional_rightprefixterminalcode)) * S ((cfc_tail_functional_right) + (cfc_matrix_functional_rightprefixterminalcode)) + ((cfc_matrix_functional_rightprefixterminalcode) + (cfc_matrix_functional_rightprefixterminalcode))))))) /\ (((exists ff_h_functional_rightprefixterminalentry. ff_h_functional_rightprefixterminalentry + S (cfc_state_functional_rightprefixterminal) = S ((S (k)) * E)) /\ exists ff_q_functional_rightprefixterminalentry. H = ff_q_functional_rightprefixterminalentry * S ((S (k)) * E) + (cfc_state_functional_rightprefixterminal))))) /\ (forall cfc_index_functional_rightprefix. (exists cfba_gap_functional_rightprefixbound. cfba_gap_functional_rightprefixbound + S (cfc_index_functional_rightprefix) = (k)) -> exists cfc_old_functional_rightprefix cfc_a_functional_rightprefix cfc_b_functional_rightprefix cfc_c_functional_rightprefix cfc_d_functional_rightprefix cfc_new_functional_rightprefix cfc_quotient_functional_rightprefix. ((exists cfc_state_functional_rightprefixprevious. ((exists cfc_left_functional_rightprefixpreviouscode cfc_right_functional_rightprefixpreviouscode cfc_matrix_functional_rightprefixpreviouscode. ((cfc_left_functional_rightprefixpreviouscode = ((cfc_a_functional_rightprefix) + (cfc_b_functional_rightprefix)) * S ((cfc_a_functional_rightprefix) + (cfc_b_functional_rightprefix)) + ((cfc_b_functional_rightprefix) + (cfc_b_functional_rightprefix))) /\ ((cfc_right_functional_rightprefixpreviouscode = ((cfc_c_functional_rightprefix) + (cfc_d_functional_rightprefix)) * S ((cfc_c_functional_rightprefix) + (cfc_d_functional_rightprefix)) + ((cfc_d_functional_rightprefix) + (cfc_d_functional_rightprefix))) /\ ((cfc_matrix_functional_rightprefixpreviouscode = ((cfc_left_functional_rightprefixpreviouscode) + (cfc_right_functional_rightprefixpreviouscode)) * S ((cfc_left_functional_rightprefixpreviouscode) + (cfc_right_functional_rightprefixpreviouscode)) + ((cfc_right_functional_rightprefixpreviouscode) + (cfc_right_functional_rightprefixpreviouscode))) /\ ((cfc_state_functional_rightprefixprevious) = ((cfc_old_functional_rightprefix) + (cfc_matrix_functional_rightprefixpreviouscode)) * S ((cfc_old_functional_rightprefix) + (cfc_matrix_functional_rightprefixpreviouscode)) + ((cfc_matrix_functional_rightprefixpreviouscode) + (cfc_matrix_functional_rightprefixpreviouscode))))))) /\ (((exists ff_h_functional_rightprefixpreviousentry. ff_h_functional_rightprefixpreviousentry + S (cfc_state_functional_rightprefixprevious) = S ((S (cfc_index_functional_rightprefix)) * E)) /\ exists ff_q_functional_rightprefixpreviousentry. H = ff_q_functional_rightprefixpreviousentry * S ((S (cfc_index_functional_rightprefix)) * E) + (cfc_state_functional_rightprefixprevious))))) /\ ((exists cfc_state_functional_rightprefixfollowing. ((exists cfc_left_functional_rightprefixfollowingcode cfc_right_functional_rightprefixfollowingcode cfc_matrix_functional_rightprefixfollowingcode. ((cfc_left_functional_rightprefixfollowingcode = (((cfc_quotient_functional_rightprefix * cfc_a_functional_rightprefix + cfc_c_functional_rightprefix)) + ((cfc_quotient_functional_rightprefix * cfc_b_functional_rightprefix + cfc_d_functional_rightprefix))) * S (((cfc_quotient_functional_rightprefix * cfc_a_functional_rightprefix + cfc_c_functional_rightprefix)) + ((cfc_quotient_functional_rightprefix * cfc_b_functional_rightprefix + cfc_d_functional_rightprefix))) + (((cfc_quotient_functional_rightprefix * cfc_b_functional_rightprefix + cfc_d_functional_rightprefix)) + ((cfc_quotient_functional_rightprefix * cfc_b_functional_rightprefix + cfc_d_functional_rightprefix)))) /\ ((cfc_right_functional_rightprefixfollowingcode = ((cfc_a_functional_rightprefix) + (cfc_b_functional_rightprefix)) * S ((cfc_a_functional_rightprefix) + (cfc_b_functional_rightprefix)) + ((cfc_b_functional_rightprefix) + (cfc_b_functional_rightprefix))) /\ ((cfc_matrix_functional_rightprefixfollowingcode = ((cfc_left_functional_rightprefixfollowingcode) + (cfc_right_functional_rightprefixfollowingcode)) * S ((cfc_left_functional_rightprefixfollowingcode) + (cfc_right_functional_rightprefixfollowingcode)) + ((cfc_right_functional_rightprefixfollowingcode) + (cfc_right_functional_rightprefixfollowingcode))) /\ ((cfc_state_functional_rightprefixfollowing) = ((cfc_new_functional_rightprefix) + (cfc_matrix_functional_rightprefixfollowingcode)) * S ((cfc_new_functional_rightprefix) + (cfc_matrix_functional_rightprefixfollowingcode)) + ((cfc_matrix_functional_rightprefixfollowingcode) + (cfc_matrix_functional_rightprefixfollowingcode))))))) /\ (((exists ff_h_functional_rightprefixfollowingentry. ff_h_functional_rightprefixfollowingentry + S (cfc_state_functional_rightprefixfollowing) = S ((S (S cfc_index_functional_rightprefix)) * E)) /\ exists ff_q_functional_rightprefixfollowingentry. H = ff_q_functional_rightprefixfollowingentry * S ((S (S cfc_index_functional_rightprefix)) * E) + (cfc_state_functional_rightprefixfollowing))))) /\ (cfc_new_functional_rightprefix = S ((cfc_quotient_functional_rightprefix + cfc_old_functional_rightprefix) * S (cfc_quotient_functional_rightprefix + cfc_old_functional_rightprefix) + (cfc_old_functional_rightprefix + cfc_old_functional_rightprefix))))))))) /\ ((s = S ((cfc_q_functional_right + cfc_tail_functional_right) * S (cfc_q_functional_right + cfc_tail_functional_right) + (cfc_tail_functional_right + cfc_tail_functional_right))) /\ (((a) = cfc_q_functional_right * cfc_a_functional_right + cfc_c_functional_right) /\ (((A) = cfc_q_functional_right * cfc_b_functional_right + cfc_d_functional_right) /\ (((b) = cfc_a_functional_right) /\ ((B) = cfc_b_functional_right)))))) - 0089
specialize cf_convergent_matrix_successor_elimination (s) - 0090
specialize cf_convergent_matrix_successor_elimination (H) - 0091
specialize cf_convergent_matrix_successor_elimination (E) - 0092
specialize cf_convergent_matrix_successor_elimination (k) - 0093
specialize cf_convergent_matrix_successor_elimination (a) - 0094
specialize cf_convergent_matrix_successor_elimination (A) - 0095
specialize cf_convergent_matrix_successor_elimination (b) - 0096
specialize cf_convergent_matrix_successor_elimination (B) - 0097
apply cf_convergent_matrix_successor_elimination - 0098
exact hsecond - 0099
cases hleft - 0100
cases hleft_witness - 0101
cases hleft_witness_witness - 0102
cases hleft_witness_witness_witness - 0103
cases hleft_witness_witness_witness_witness - 0104
cases hleft_witness_witness_witness_witness_witness - 0105
cases hright - 0106
cases hright_witness - 0107
cases hright_witness_witness - 0108
cases hright_witness_witness_witness - 0109
cases hright_witness_witness_witness_witness - 0110
cases hright_witness_witness_witness_witness_witness - 0111
cases hleft_witness_witness_witness_witness_witness_witness - 0112
cases hleft_witness_witness_witness_witness_witness_witness_right - 0113
cases hleft_witness_witness_witness_witness_witness_witness_right_right - 0114
cases hleft_witness_witness_witness_witness_witness_witness_right_right_right - 0115
cases hleft_witness_witness_witness_witness_witness_witness_right_right_right_right - 0116
cases hright_witness_witness_witness_witness_witness_witness - 0117
cases hright_witness_witness_witness_witness_witness_witness_right - 0118
cases hright_witness_witness_witness_witness_witness_witness_right_right - 0119
cases hright_witness_witness_witness_witness_witness_witness_right_right_right - 0120
cases hright_witness_witness_witness_witness_witness_witness_right_right_right_right - 0121
have hcell : x5 = x11 /\ x = x6 - 0122
specialize cell_functional (s) - 0123
specialize cell_functional (x5) - 0124
specialize cell_functional (x) - 0125
specialize cell_functional (x11) - 0126
specialize cell_functional (x6) - 0127
apply cell_functional - 0128
exact hleft_witness_witness_witness_witness_witness_witness_right_left - 0129
exact hright_witness_witness_witness_witness_witness_witness_right_left - 0130
cases hcell - 0131
have hinner : ((x1 = x7) /\ ((x2 = x8) /\ ((x3 = x9) /\ (x4 = x10)))) - 0132
specialize IH (x) - 0133
specialize IH (h) - 0134
specialize IH (e) - 0135
specialize IH (H) - 0136
specialize IH (E) - 0137
specialize IH (x1) - 0138
specialize IH (x2) - 0139
specialize IH (x3) - 0140
specialize IH (x4) - 0141
specialize IH (x7) - 0142
specialize IH (x8) - 0143
specialize IH (x9) - 0144
specialize IH (x10) - 0145
apply IH - 0146
exact hleft_witness_witness_witness_witness_witness_witness_left - 0147
specialize cf_convergent_matrix_list_transport (x6) - 0148
specialize cf_convergent_matrix_list_transport (x) - 0149
specialize cf_convergent_matrix_list_transport (H) - 0150
specialize cf_convergent_matrix_list_transport (E) - 0151
specialize cf_convergent_matrix_list_transport (k) - 0152
specialize cf_convergent_matrix_list_transport (x7) - 0153
specialize cf_convergent_matrix_list_transport (x8) - 0154
specialize cf_convergent_matrix_list_transport (x9) - 0155
specialize cf_convergent_matrix_list_transport (x10) - 0156
apply cf_convergent_matrix_list_transport - 0157
symm - 0158
exact hcell_right - 0159
exact hright_witness_witness_witness_witness_witness_witness_left - 0160
cases hinner - 0161
cases hinner_right - 0162
cases hinner_right_right - 0163
split - 0164
trans x5 * x1 + x3 - 0165
exact hleft_witness_witness_witness_witness_witness_witness_right_right_left - 0166
trans x11 * x7 + x9 - 0167
rewrite hcell_left - 0168
rewrite hinner_left - 0169
rewrite hinner_right_right_left - 0170
refl - 0171
symm - 0172
exact hright_witness_witness_witness_witness_witness_witness_right_right_left - 0173
split - 0174
trans x5 * x2 + x4 - 0175
exact hleft_witness_witness_witness_witness_witness_witness_right_right_right_left - 0176
trans x11 * x8 + x10 - 0177
rewrite hcell_left - 0178
rewrite hinner_right_left - 0179
rewrite hinner_right_right_right - 0180
refl - 0181
symm - 0182
exact hright_witness_witness_witness_witness_witness_witness_right_right_right_left - 0183
split - 0184
trans x1 - 0185
exact hleft_witness_witness_witness_witness_witness_witness_right_right_right_right_left - 0186
trans x7 - 0187
exact hinner_left - 0188
symm - 0189
exact hright_witness_witness_witness_witness_witness_witness_right_right_right_right_left - 0190
trans x2 - 0191
exact hleft_witness_witness_witness_witness_witness_witness_right_right_right_right_right - 0192
trans x8 - 0193
exact hinner_right_left - 0194
symm - 0195
exact hright_witness_witness_witness_witness_witness_witness_right_right_right_right_right