Exact expanded first-order arithmetic statement
forall F pb pc nb nc l z. ((F) = (((((pb) + (pc)) * S ((pb) + (pc)) + ((pc) + (pc))) + (((nb) + (nc)) * S ((nb) + (nc)) + ((nc) + (nc)))) * S ((((pb) + (pc)) * S ((pb) + (pc)) + ((pc) + (pc))) + (((nb) + (nc)) * S ((nb) + (nc)) + ((nc) + (nc)))) + ((((nb) + (nc)) * S ((nb) + (nc)) + ((nc) + (nc))) + (((nb) + (nc)) * S ((nb) + (nc)) + ((nc) + (nc)))))) -> (exists dst_positive_code_sum_unpacked_input dst_positive_scale_sum_unpacked_input dst_negative_code_sum_unpacked_input dst_negative_scale_sum_unpacked_input dst_positive_sum_sum_unpacked_input dst_negative_sum_sum_unpacked_input. (((F) = (((((dst_positive_code_sum_unpacked_input) + (dst_positive_scale_sum_unpacked_input)) * S ((dst_positive_code_sum_unpacked_input) + (dst_positive_scale_sum_unpacked_input)) + ((dst_positive_scale_sum_unpacked_input) + (dst_positive_scale_sum_unpacked_input))) + (((dst_negative_code_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)) * S ((dst_negative_code_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)) + ((dst_negative_scale_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)))) * S ((((dst_positive_code_sum_unpacked_input) + (dst_positive_scale_sum_unpacked_input)) * S ((dst_positive_code_sum_unpacked_input) + (dst_positive_scale_sum_unpacked_input)) + ((dst_positive_scale_sum_unpacked_input) + (dst_positive_scale_sum_unpacked_input))) + (((dst_negative_code_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)) * S ((dst_negative_code_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)) + ((dst_negative_scale_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)))) + ((((dst_negative_code_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)) * S ((dst_negative_code_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)) + ((dst_negative_scale_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input))) + (((dst_negative_code_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)) * S ((dst_negative_code_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)) + ((dst_negative_scale_sum_unpacked_input) + (dst_negative_scale_sum_unpacked_input)))))) /\ (((exists fs_u_dst_sum_unpacked_inputpositive fs_v_dst_sum_unpacked_inputpositive. ((((exists fs_h_dst_sum_unpacked_inputpositive_body_start. fs_h_dst_sum_unpacked_inputpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_sum_unpacked_inputpositive)) /\ exists fs_q_dst_sum_unpacked_inputpositive_body_start. fs_u_dst_sum_unpacked_inputpositive = fs_q_dst_sum_unpacked_inputpositive_body_start * S ((S (0)) * fs_v_dst_sum_unpacked_inputpositive) + (0))) /\ ((((exists fs_h_dst_sum_unpacked_inputpositive_body_terminal. fs_h_dst_sum_unpacked_inputpositive_body_terminal + S (dst_positive_sum_sum_unpacked_input) = S ((S (l)) * fs_v_dst_sum_unpacked_inputpositive)) /\ exists fs_q_dst_sum_unpacked_inputpositive_body_terminal. fs_u_dst_sum_unpacked_inputpositive = fs_q_dst_sum_unpacked_inputpositive_body_terminal * S ((S (l)) * fs_v_dst_sum_unpacked_inputpositive) + (dst_positive_sum_sum_unpacked_input))) /\ forall fs_i_dst_sum_unpacked_inputpositive_body_steps. (exists fs_lt_dst_sum_unpacked_inputpositive_body_steps_bound. fs_lt_dst_sum_unpacked_inputpositive_body_steps_bound + S fs_i_dst_sum_unpacked_inputpositive_body_steps = l) -> exists fs_a_dst_sum_unpacked_inputpositive_body_steps fs_r_dst_sum_unpacked_inputpositive_body_steps fs_s_dst_sum_unpacked_inputpositive_body_steps. ((((exists fs_h_dst_sum_unpacked_inputpositive_body_steps_summand. fs_h_dst_sum_unpacked_inputpositive_body_steps_summand + S (fs_a_dst_sum_unpacked_inputpositive_body_steps) = S ((S (fs_i_dst_sum_unpacked_inputpositive_body_steps)) * dst_positive_scale_sum_unpacked_input)) /\ exists fs_q_dst_sum_unpacked_inputpositive_body_steps_summand. dst_positive_code_sum_unpacked_input = fs_q_dst_sum_unpacked_inputpositive_body_steps_summand * S ((S (fs_i_dst_sum_unpacked_inputpositive_body_steps)) * dst_positive_scale_sum_unpacked_input) + (fs_a_dst_sum_unpacked_inputpositive_body_steps))) /\ ((((exists fs_h_dst_sum_unpacked_inputpositive_body_steps_partial. fs_h_dst_sum_unpacked_inputpositive_body_steps_partial + S (fs_r_dst_sum_unpacked_inputpositive_body_steps) = S ((S (fs_i_dst_sum_unpacked_inputpositive_body_steps)) * fs_v_dst_sum_unpacked_inputpositive)) /\ exists fs_q_dst_sum_unpacked_inputpositive_body_steps_partial. fs_u_dst_sum_unpacked_inputpositive = fs_q_dst_sum_unpacked_inputpositive_body_steps_partial * S ((S (fs_i_dst_sum_unpacked_inputpositive_body_steps)) * fs_v_dst_sum_unpacked_inputpositive) + (fs_r_dst_sum_unpacked_inputpositive_body_steps))) /\ ((((exists fs_h_dst_sum_unpacked_inputpositive_body_steps_successor. fs_h_dst_sum_unpacked_inputpositive_body_steps_successor + S (fs_s_dst_sum_unpacked_inputpositive_body_steps) = S ((S (S fs_i_dst_sum_unpacked_inputpositive_body_steps)) * fs_v_dst_sum_unpacked_inputpositive)) /\ exists fs_q_dst_sum_unpacked_inputpositive_body_steps_successor. fs_u_dst_sum_unpacked_inputpositive = fs_q_dst_sum_unpacked_inputpositive_body_steps_successor * S ((S (S fs_i_dst_sum_unpacked_inputpositive_body_steps)) * fs_v_dst_sum_unpacked_inputpositive) + (fs_s_dst_sum_unpacked_inputpositive_body_steps))) /\ fs_s_dst_sum_unpacked_inputpositive_body_steps = fs_r_dst_sum_unpacked_inputpositive_body_steps + fs_a_dst_sum_unpacked_inputpositive_body_steps)))))) /\ (((exists fs_u_dst_sum_unpacked_inputnegative fs_v_dst_sum_unpacked_inputnegative. ((((exists fs_h_dst_sum_unpacked_inputnegative_body_start. fs_h_dst_sum_unpacked_inputnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_sum_unpacked_inputnegative)) /\ exists fs_q_dst_sum_unpacked_inputnegative_body_start. fs_u_dst_sum_unpacked_inputnegative = fs_q_dst_sum_unpacked_inputnegative_body_start * S ((S (0)) * fs_v_dst_sum_unpacked_inputnegative) + (0))) /\ ((((exists fs_h_dst_sum_unpacked_inputnegative_body_terminal. fs_h_dst_sum_unpacked_inputnegative_body_terminal + S (dst_negative_sum_sum_unpacked_input) = S ((S (l)) * fs_v_dst_sum_unpacked_inputnegative)) /\ exists fs_q_dst_sum_unpacked_inputnegative_body_terminal. fs_u_dst_sum_unpacked_inputnegative = fs_q_dst_sum_unpacked_inputnegative_body_terminal * S ((S (l)) * fs_v_dst_sum_unpacked_inputnegative) + (dst_negative_sum_sum_unpacked_input))) /\ forall fs_i_dst_sum_unpacked_inputnegative_body_steps. (exists fs_lt_dst_sum_unpacked_inputnegative_body_steps_bound. fs_lt_dst_sum_unpacked_inputnegative_body_steps_bound + S fs_i_dst_sum_unpacked_inputnegative_body_steps = l) -> exists fs_a_dst_sum_unpacked_inputnegative_body_steps fs_r_dst_sum_unpacked_inputnegative_body_steps fs_s_dst_sum_unpacked_inputnegative_body_steps. ((((exists fs_h_dst_sum_unpacked_inputnegative_body_steps_summand. fs_h_dst_sum_unpacked_inputnegative_body_steps_summand + S (fs_a_dst_sum_unpacked_inputnegative_body_steps) = S ((S (fs_i_dst_sum_unpacked_inputnegative_body_steps)) * dst_negative_scale_sum_unpacked_input)) /\ exists fs_q_dst_sum_unpacked_inputnegative_body_steps_summand. dst_negative_code_sum_unpacked_input = fs_q_dst_sum_unpacked_inputnegative_body_steps_summand * S ((S (fs_i_dst_sum_unpacked_inputnegative_body_steps)) * dst_negative_scale_sum_unpacked_input) + (fs_a_dst_sum_unpacked_inputnegative_body_steps))) /\ ((((exists fs_h_dst_sum_unpacked_inputnegative_body_steps_partial. fs_h_dst_sum_unpacked_inputnegative_body_steps_partial + S (fs_r_dst_sum_unpacked_inputnegative_body_steps) = S ((S (fs_i_dst_sum_unpacked_inputnegative_body_steps)) * fs_v_dst_sum_unpacked_inputnegative)) /\ exists fs_q_dst_sum_unpacked_inputnegative_body_steps_partial. fs_u_dst_sum_unpacked_inputnegative = fs_q_dst_sum_unpacked_inputnegative_body_steps_partial * S ((S (fs_i_dst_sum_unpacked_inputnegative_body_steps)) * fs_v_dst_sum_unpacked_inputnegative) + (fs_r_dst_sum_unpacked_inputnegative_body_steps))) /\ ((((exists fs_h_dst_sum_unpacked_inputnegative_body_steps_successor. fs_h_dst_sum_unpacked_inputnegative_body_steps_successor + S (fs_s_dst_sum_unpacked_inputnegative_body_steps) = S ((S (S fs_i_dst_sum_unpacked_inputnegative_body_steps)) * fs_v_dst_sum_unpacked_inputnegative)) /\ exists fs_q_dst_sum_unpacked_inputnegative_body_steps_successor. fs_u_dst_sum_unpacked_inputnegative = fs_q_dst_sum_unpacked_inputnegative_body_steps_successor * S ((S (S fs_i_dst_sum_unpacked_inputnegative_body_steps)) * fs_v_dst_sum_unpacked_inputnegative) + (fs_s_dst_sum_unpacked_inputnegative_body_steps))) /\ fs_s_dst_sum_unpacked_inputnegative_body_steps = fs_r_dst_sum_unpacked_inputnegative_body_steps + fs_a_dst_sum_unpacked_inputnegative_body_steps)))))) /\ (exists ge_balance_positive_sum_unpacked_inputresult ge_balance_negative_sum_unpacked_inputresult. (((((z) = 2 * (ge_balance_positive_sum_unpacked_inputresult) /\ (ge_balance_negative_sum_unpacked_inputresult) = 0) \/ exists ge_signed_half_sum_unpacked_inputresultdecode. (((z) = 2 * ge_signed_half_sum_unpacked_inputresultdecode + 1 /\ (ge_balance_positive_sum_unpacked_inputresult) = 0) /\ (ge_balance_negative_sum_unpacked_inputresult) = S ge_signed_half_sum_unpacked_inputresultdecode))) /\ ((dst_positive_sum_sum_unpacked_input) + ge_balance_negative_sum_unpacked_inputresult = (dst_negative_sum_sum_unpacked_input) + ge_balance_positive_sum_unpacked_inputresult))))))))) -> exists p n. ((exists fs_u_dst_sum_unpacked_positive fs_v_dst_sum_unpacked_positive. ((((exists fs_h_dst_sum_unpacked_positive_body_start. fs_h_dst_sum_unpacked_positive_body_start + S (0) = S ((S (0)) * fs_v_dst_sum_unpacked_positive)) /\ exists fs_q_dst_sum_unpacked_positive_body_start. fs_u_dst_sum_unpacked_positive = fs_q_dst_sum_unpacked_positive_body_start * S ((S (0)) * fs_v_dst_sum_unpacked_positive) + (0))) /\ ((((exists fs_h_dst_sum_unpacked_positive_body_terminal. fs_h_dst_sum_unpacked_positive_body_terminal + S (p) = S ((S (l)) * fs_v_dst_sum_unpacked_positive)) /\ exists fs_q_dst_sum_unpacked_positive_body_terminal. fs_u_dst_sum_unpacked_positive = fs_q_dst_sum_unpacked_positive_body_terminal * S ((S (l)) * fs_v_dst_sum_unpacked_positive) + (p))) /\ forall fs_i_dst_sum_unpacked_positive_body_steps. (exists fs_lt_dst_sum_unpacked_positive_body_steps_bound. fs_lt_dst_sum_unpacked_positive_body_steps_bound + S fs_i_dst_sum_unpacked_positive_body_steps = l) -> exists fs_a_dst_sum_unpacked_positive_body_steps fs_r_dst_sum_unpacked_positive_body_steps fs_s_dst_sum_unpacked_positive_body_steps. ((((exists fs_h_dst_sum_unpacked_positive_body_steps_summand. fs_h_dst_sum_unpacked_positive_body_steps_summand + S (fs_a_dst_sum_unpacked_positive_body_steps) = S ((S (fs_i_dst_sum_unpacked_positive_body_steps)) * pc)) /\ exists fs_q_dst_sum_unpacked_positive_body_steps_summand. pb = fs_q_dst_sum_unpacked_positive_body_steps_summand * S ((S (fs_i_dst_sum_unpacked_positive_body_steps)) * pc) + (fs_a_dst_sum_unpacked_positive_body_steps))) /\ ((((exists fs_h_dst_sum_unpacked_positive_body_steps_partial. fs_h_dst_sum_unpacked_positive_body_steps_partial + S (fs_r_dst_sum_unpacked_positive_body_steps) = S ((S (fs_i_dst_sum_unpacked_positive_body_steps)) * fs_v_dst_sum_unpacked_positive)) /\ exists fs_q_dst_sum_unpacked_positive_body_steps_partial. fs_u_dst_sum_unpacked_positive = fs_q_dst_sum_unpacked_positive_body_steps_partial * S ((S (fs_i_dst_sum_unpacked_positive_body_steps)) * fs_v_dst_sum_unpacked_positive) + (fs_r_dst_sum_unpacked_positive_body_steps))) /\ ((((exists fs_h_dst_sum_unpacked_positive_body_steps_successor. fs_h_dst_sum_unpacked_positive_body_steps_successor + S (fs_s_dst_sum_unpacked_positive_body_steps) = S ((S (S fs_i_dst_sum_unpacked_positive_body_steps)) * fs_v_dst_sum_unpacked_positive)) /\ exists fs_q_dst_sum_unpacked_positive_body_steps_successor. fs_u_dst_sum_unpacked_positive = fs_q_dst_sum_unpacked_positive_body_steps_successor * S ((S (S fs_i_dst_sum_unpacked_positive_body_steps)) * fs_v_dst_sum_unpacked_positive) + (fs_s_dst_sum_unpacked_positive_body_steps))) /\ fs_s_dst_sum_unpacked_positive_body_steps = fs_r_dst_sum_unpacked_positive_body_steps + fs_a_dst_sum_unpacked_positive_body_steps)))))) /\ (((exists fs_u_dst_sum_unpacked_negative fs_v_dst_sum_unpacked_negative. ((((exists fs_h_dst_sum_unpacked_negative_body_start. fs_h_dst_sum_unpacked_negative_body_start + S (0) = S ((S (0)) * fs_v_dst_sum_unpacked_negative)) /\ exists fs_q_dst_sum_unpacked_negative_body_start. fs_u_dst_sum_unpacked_negative = fs_q_dst_sum_unpacked_negative_body_start * S ((S (0)) * fs_v_dst_sum_unpacked_negative) + (0))) /\ ((((exists fs_h_dst_sum_unpacked_negative_body_terminal. fs_h_dst_sum_unpacked_negative_body_terminal + S (n) = S ((S (l)) * fs_v_dst_sum_unpacked_negative)) /\ exists fs_q_dst_sum_unpacked_negative_body_terminal. fs_u_dst_sum_unpacked_negative = fs_q_dst_sum_unpacked_negative_body_terminal * S ((S (l)) * fs_v_dst_sum_unpacked_negative) + (n))) /\ forall fs_i_dst_sum_unpacked_negative_body_steps. (exists fs_lt_dst_sum_unpacked_negative_body_steps_bound. fs_lt_dst_sum_unpacked_negative_body_steps_bound + S fs_i_dst_sum_unpacked_negative_body_steps = l) -> exists fs_a_dst_sum_unpacked_negative_body_steps fs_r_dst_sum_unpacked_negative_body_steps fs_s_dst_sum_unpacked_negative_body_steps. ((((exists fs_h_dst_sum_unpacked_negative_body_steps_summand. fs_h_dst_sum_unpacked_negative_body_steps_summand + S (fs_a_dst_sum_unpacked_negative_body_steps) = S ((S (fs_i_dst_sum_unpacked_negative_body_steps)) * nc)) /\ exists fs_q_dst_sum_unpacked_negative_body_steps_summand. nb = fs_q_dst_sum_unpacked_negative_body_steps_summand * S ((S (fs_i_dst_sum_unpacked_negative_body_steps)) * nc) + (fs_a_dst_sum_unpacked_negative_body_steps))) /\ ((((exists fs_h_dst_sum_unpacked_negative_body_steps_partial. fs_h_dst_sum_unpacked_negative_body_steps_partial + S (fs_r_dst_sum_unpacked_negative_body_steps) = S ((S (fs_i_dst_sum_unpacked_negative_body_steps)) * fs_v_dst_sum_unpacked_negative)) /\ exists fs_q_dst_sum_unpacked_negative_body_steps_partial. fs_u_dst_sum_unpacked_negative = fs_q_dst_sum_unpacked_negative_body_steps_partial * S ((S (fs_i_dst_sum_unpacked_negative_body_steps)) * fs_v_dst_sum_unpacked_negative) + (fs_r_dst_sum_unpacked_negative_body_steps))) /\ ((((exists fs_h_dst_sum_unpacked_negative_body_steps_successor. fs_h_dst_sum_unpacked_negative_body_steps_successor + S (fs_s_dst_sum_unpacked_negative_body_steps) = S ((S (S fs_i_dst_sum_unpacked_negative_body_steps)) * fs_v_dst_sum_unpacked_negative)) /\ exists fs_q_dst_sum_unpacked_negative_body_steps_successor. fs_u_dst_sum_unpacked_negative = fs_q_dst_sum_unpacked_negative_body_steps_successor * S ((S (S fs_i_dst_sum_unpacked_negative_body_steps)) * fs_v_dst_sum_unpacked_negative) + (fs_s_dst_sum_unpacked_negative_body_steps))) /\ fs_s_dst_sum_unpacked_negative_body_steps = fs_r_dst_sum_unpacked_negative_body_steps + fs_a_dst_sum_unpacked_negative_body_steps)))))) /\ (exists ge_balance_positive_sum_unpacked_balance ge_balance_negative_sum_unpacked_balance. (((((z) = 2 * (ge_balance_positive_sum_unpacked_balance) /\ (ge_balance_negative_sum_unpacked_balance) = 0) \/ exists ge_signed_half_sum_unpacked_balancedecode. (((z) = 2 * ge_signed_half_sum_unpacked_balancedecode + 1 /\ (ge_balance_positive_sum_unpacked_balance) = 0) /\ (ge_balance_negative_sum_unpacked_balance) = S ge_signed_half_sum_unpacked_balancedecode))) /\ ((p) + ge_balance_negative_sum_unpacked_balance = (n) + ge_balance_positive_sum_unpacked_balance))))))Constructive proof overview
Generated structural guide
Every signed sum unpacks into actual natural prefix sums against its proved table representation.
The unchanged tactic script uses 1 declared prerequisite and contains 47 exact native proof lines.
Public research checkpoint: original HA and independently compiled Lean verified; not Alpha-enrolled, no Alpha checked-use authority; not Stable
Proof neighborhood
Direct dependencies
Direct dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. The literal dependency-closed bundle is checked by original HA and the independently compiled Lean verifier. Public delivery grants no Alpha checked-use authority or 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.
01Fix variables and assumptionsL1–9
02Separate the logical casesL10–18
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L10
cases hsum - L11
cases hsum_witness - L12
cases hsum_witness_witness - L13
cases hsum_witness_witness_witness - L14
cases hsum_witness_witness_witness_witness - L15
cases hsum_witness_witness_witness_witness_witness - L16
cases hsum_witness_witness_witness_witness_witness_witness - L17
cases hsum_witness_witness_witness_witness_witness_witness_right - L18
cases hsum_witness_witness_witness_witness_witness_witness_right_right
03Establish heqL19–28
Establish this local claim before using it. It is not an additional assumption.
- L19
have heq : ((x = pb) /\ (((x1 = pc) /\ (((x2 = nb) /\ (x3 = nc)))))) - L20
specialize matrix_minor_four_code_components_injective (F) - L21
specialize matrix_minor_four_code_components_injective (x) - L22
specialize matrix_minor_four_code_components_injective (x1) - L23
specialize matrix_minor_four_code_components_injective (x2) - L24
specialize matrix_minor_four_code_components_injective (x3) - L25
specialize matrix_minor_four_code_components_injective (pb) - L26
specialize matrix_minor_four_code_components_injective (pc) - L27
specialize matrix_minor_four_code_components_injective (nb) - L28
specialize matrix_minor_four_code_components_injective (nc)
04Use earlier factsL29–31
05Separate the logical casesL32–34
06Construct an explicit witnessL35–36
07Separate the logical casesL37–37
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L37
split
08Calculate and transport equalitiesL38–40
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
09Use earlier factsL41–41
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L41
exact hsum_witness_witness_witness_witness_witness_witness_right_left
10Separate the logical casesL42–42
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L42
split
11Calculate and transport equalitiesL43–45
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L43
rewrite heq_right_right_left at hsum_witness_witness_witness_witness_witness_witness_right_right_left - L44
rewrite heq_right_right_right at hsum_witness_witness_witness_witness_witness_witness_right_right_left - L45
rewrite heq_right_right_right at hsum_witness_witness_witness_witness_witness_witness_right_right_left
Original exact command ledger · 47 lines
- 0001
intro F - 0002
intro pb - 0003
intro pc - 0004
intro nb - 0005
intro nc - 0006
intro l - 0007
intro z - 0008
intro hrep - 0009
intro hsum - 0010
cases hsum - 0011
cases hsum_witness - 0012
cases hsum_witness_witness - 0013
cases hsum_witness_witness_witness - 0014
cases hsum_witness_witness_witness_witness - 0015
cases hsum_witness_witness_witness_witness_witness - 0016
cases hsum_witness_witness_witness_witness_witness_witness - 0017
cases hsum_witness_witness_witness_witness_witness_witness_right - 0018
cases hsum_witness_witness_witness_witness_witness_witness_right_right - 0019
have heq : ((x = pb) /\ (((x1 = pc) /\ (((x2 = nb) /\ (x3 = nc)))))) - 0020
specialize matrix_minor_four_code_components_injective (F) - 0021
specialize matrix_minor_four_code_components_injective (x) - 0022
specialize matrix_minor_four_code_components_injective (x1) - 0023
specialize matrix_minor_four_code_components_injective (x2) - 0024
specialize matrix_minor_four_code_components_injective (x3) - 0025
specialize matrix_minor_four_code_components_injective (pb) - 0026
specialize matrix_minor_four_code_components_injective (pc) - 0027
specialize matrix_minor_four_code_components_injective (nb) - 0028
specialize matrix_minor_four_code_components_injective (nc) - 0029
apply matrix_minor_four_code_components_injective - 0030
exact hsum_witness_witness_witness_witness_witness_witness_left - 0031
exact hrep - 0032
cases heq - 0033
cases heq_right - 0034
cases heq_right_right - 0035
exists x4 - 0036
exists x5 - 0037
split - 0038
rewrite heq_left at hsum_witness_witness_witness_witness_witness_witness_right_left - 0039
rewrite heq_right_left at hsum_witness_witness_witness_witness_witness_witness_right_left - 0040
rewrite heq_right_left at hsum_witness_witness_witness_witness_witness_witness_right_left - 0041
exact hsum_witness_witness_witness_witness_witness_witness_right_left - 0042
split - 0043
rewrite heq_right_right_left at hsum_witness_witness_witness_witness_witness_witness_right_right_left - 0044
rewrite heq_right_right_right at hsum_witness_witness_witness_witness_witness_witness_right_right_left - 0045
rewrite heq_right_right_right at hsum_witness_witness_witness_witness_witness_witness_right_right_left - 0046
exact hsum_witness_witness_witness_witness_witness_witness_right_right_left - 0047
exact hsum_witness_witness_witness_witness_witness_witness_right_right_right