CE0019

signed_alternating_cofactor_fold_exists_unique

Every arbitrary-length signed row/cofactor pair has exactly one subtraction-free signed alternating Laplace value.

Alpha v34 checked-use · first admitted v25 · independently kernel and Lean verified; not Stable

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.

Historical partial components only: this chapter proves genuine signed first-row minors and unique alternating folds, with supplied cofactor values. T13 is now closed in the separate Alpha-v27 integer-linear-algebra branch with actual arbitrary determinant data, rank, and integer column spans; lattice index and normal forms are not claimed. Full T13 proof · Alpha v27

Exact theorem in conservative defined notation

∀ ab. ∀ ac. ∀ db. ∀ dc. ∀ eb. ∀ ec. ∀ fb. ∀ fc. ∀ l. ∃ p. ∃ n. SignedAlternatingCofactorFold(ab,ac,db,dc,eb,ec,fb,fc,l,p,n) ∧ (∀ x. ∀ y. SignedAlternatingCofactorFold(ab,ac,db,dc,eb,ec,fb,fc,l,x,y) → p = x ∧ n = y)

Every linked abbreviation expands hygienically to the identical original native formula.

Definition DAG

Actual proof prerequisites

Original expanded first-order statement
forall ab ac db dc eb ec fb fc l. exists p n. ((exists ff_ub_mce_fold_result ff_uc_mce_fold_result ff_vb_mce_fold_result ff_vc_mce_fold_result. ((forall ff_index_mce_alternating_result_prefix. (exists ff_gap_mce_result_prefix_index. ff_gap_mce_result_prefix_index + S (ff_index_mce_alternating_result_prefix) = (l)) -> exists ff_ap_mce_alternating_result_prefix ff_an_mce_alternating_result_prefix ff_bp_mce_alternating_result_prefix ff_bn_mce_alternating_result_prefix ff_p_mce_alternating_result_prefix ff_n_mce_alternating_result_prefix. ((((exists ff_h_mce_result_prefix_ap. ff_h_mce_result_prefix_ap + S (ff_ap_mce_alternating_result_prefix) = S ((S (ff_index_mce_alternating_result_prefix)) * ac)) /\ exists ff_q_mce_result_prefix_ap. ab = ff_q_mce_result_prefix_ap * S ((S (ff_index_mce_alternating_result_prefix)) * ac) + (ff_ap_mce_alternating_result_prefix))) /\ ((((exists ff_h_mce_result_prefix_an. ff_h_mce_result_prefix_an + S (ff_an_mce_alternating_result_prefix) = S ((S (ff_index_mce_alternating_result_prefix)) * dc)) /\ exists ff_q_mce_result_prefix_an. db = ff_q_mce_result_prefix_an * S ((S (ff_index_mce_alternating_result_prefix)) * dc) + (ff_an_mce_alternating_result_prefix))) /\ ((((exists ff_h_mce_result_prefix_bp. ff_h_mce_result_prefix_bp + S (ff_bp_mce_alternating_result_prefix) = S ((S (ff_index_mce_alternating_result_prefix)) * ec)) /\ exists ff_q_mce_result_prefix_bp. eb = ff_q_mce_result_prefix_bp * S ((S (ff_index_mce_alternating_result_prefix)) * ec) + (ff_bp_mce_alternating_result_prefix))) /\ ((((exists ff_h_mce_result_prefix_bn. ff_h_mce_result_prefix_bn + S (ff_bn_mce_alternating_result_prefix) = S ((S (ff_index_mce_alternating_result_prefix)) * fc)) /\ exists ff_q_mce_result_prefix_bn. fb = ff_q_mce_result_prefix_bn * S ((S (ff_index_mce_alternating_result_prefix)) * fc) + (ff_bn_mce_alternating_result_prefix))) /\ ((((exists ff_h_mce_result_prefix_positive. ff_h_mce_result_prefix_positive + S (ff_p_mce_alternating_result_prefix) = S ((S (ff_index_mce_alternating_result_prefix)) * ff_uc_mce_fold_result)) /\ exists ff_q_mce_result_prefix_positive. ff_ub_mce_fold_result = ff_q_mce_result_prefix_positive * S ((S (ff_index_mce_alternating_result_prefix)) * ff_uc_mce_fold_result) + (ff_p_mce_alternating_result_prefix))) /\ ((((exists ff_h_mce_result_prefix_negative. ff_h_mce_result_prefix_negative + S (ff_n_mce_alternating_result_prefix) = S ((S (ff_index_mce_alternating_result_prefix)) * ff_vc_mce_fold_result)) /\ exists ff_q_mce_result_prefix_negative. ff_vb_mce_fold_result = ff_q_mce_result_prefix_negative * S ((S (ff_index_mce_alternating_result_prefix)) * ff_vc_mce_fold_result) + (ff_n_mce_alternating_result_prefix))) /\ (((exists ff_even_mce_term_result_prefix_term. ff_index_mce_alternating_result_prefix = 2 * ff_even_mce_term_result_prefix_term) /\ (ff_p_mce_alternating_result_prefix = (ff_ap_mce_alternating_result_prefix) * (ff_bp_mce_alternating_result_prefix) + (ff_an_mce_alternating_result_prefix) * (ff_bn_mce_alternating_result_prefix) /\ ff_n_mce_alternating_result_prefix = (ff_ap_mce_alternating_result_prefix) * (ff_bn_mce_alternating_result_prefix) + (ff_an_mce_alternating_result_prefix) * (ff_bp_mce_alternating_result_prefix))) \/ ((exists ff_odd_mce_term_result_prefix_term. ff_index_mce_alternating_result_prefix = 2 * ff_odd_mce_term_result_prefix_term + 1) /\ (ff_p_mce_alternating_result_prefix = (ff_ap_mce_alternating_result_prefix) * (ff_bn_mce_alternating_result_prefix) + (ff_an_mce_alternating_result_prefix) * (ff_bp_mce_alternating_result_prefix) /\ ff_n_mce_alternating_result_prefix = (ff_ap_mce_alternating_result_prefix) * (ff_bp_mce_alternating_result_prefix) + (ff_an_mce_alternating_result_prefix) * (ff_bn_mce_alternating_result_prefix))))))))))) /\ ((exists ff_u_mce_result_positive ff_v_mce_result_positive. ((((exists ff_h_mce_result_positive_start. ff_h_mce_result_positive_start + S (0) = S ((S (0)) * ff_v_mce_result_positive)) /\ exists ff_q_mce_result_positive_start. ff_u_mce_result_positive = ff_q_mce_result_positive_start * S ((S (0)) * ff_v_mce_result_positive) + (0))) /\ ((((exists ff_h_mce_result_positive_terminal. ff_h_mce_result_positive_terminal + S (p) = S ((S (l)) * ff_v_mce_result_positive)) /\ exists ff_q_mce_result_positive_terminal. ff_u_mce_result_positive = ff_q_mce_result_positive_terminal * S ((S (l)) * ff_v_mce_result_positive) + (p))) /\ forall ff_i_mce_result_positive. (exists ff_lt_mce_result_positive_bound. ff_lt_mce_result_positive_bound + S ff_i_mce_result_positive = l) -> exists ff_a_mce_result_positive ff_r_mce_result_positive ff_s_mce_result_positive. ((((exists ff_h_mce_result_positive_summand. ff_h_mce_result_positive_summand + S (ff_a_mce_result_positive) = S ((S (ff_i_mce_result_positive)) * ff_uc_mce_fold_result)) /\ exists ff_q_mce_result_positive_summand. ff_ub_mce_fold_result = ff_q_mce_result_positive_summand * S ((S (ff_i_mce_result_positive)) * ff_uc_mce_fold_result) + (ff_a_mce_result_positive))) /\ ((((exists ff_h_mce_result_positive_partial. ff_h_mce_result_positive_partial + S (ff_r_mce_result_positive) = S ((S (ff_i_mce_result_positive)) * ff_v_mce_result_positive)) /\ exists ff_q_mce_result_positive_partial. ff_u_mce_result_positive = ff_q_mce_result_positive_partial * S ((S (ff_i_mce_result_positive)) * ff_v_mce_result_positive) + (ff_r_mce_result_positive))) /\ ((((exists ff_h_mce_result_positive_successor. ff_h_mce_result_positive_successor + S (ff_s_mce_result_positive) = S ((S (S ff_i_mce_result_positive)) * ff_v_mce_result_positive)) /\ exists ff_q_mce_result_positive_successor. ff_u_mce_result_positive = ff_q_mce_result_positive_successor * S ((S (S ff_i_mce_result_positive)) * ff_v_mce_result_positive) + (ff_s_mce_result_positive))) /\ ff_s_mce_result_positive = ff_r_mce_result_positive + ff_a_mce_result_positive)))))) /\ (exists ff_u_mce_result_negative ff_v_mce_result_negative. ((((exists ff_h_mce_result_negative_start. ff_h_mce_result_negative_start + S (0) = S ((S (0)) * ff_v_mce_result_negative)) /\ exists ff_q_mce_result_negative_start. ff_u_mce_result_negative = ff_q_mce_result_negative_start * S ((S (0)) * ff_v_mce_result_negative) + (0))) /\ ((((exists ff_h_mce_result_negative_terminal. ff_h_mce_result_negative_terminal + S (n) = S ((S (l)) * ff_v_mce_result_negative)) /\ exists ff_q_mce_result_negative_terminal. ff_u_mce_result_negative = ff_q_mce_result_negative_terminal * S ((S (l)) * ff_v_mce_result_negative) + (n))) /\ forall ff_i_mce_result_negative. (exists ff_lt_mce_result_negative_bound. ff_lt_mce_result_negative_bound + S ff_i_mce_result_negative = l) -> exists ff_a_mce_result_negative ff_r_mce_result_negative ff_s_mce_result_negative. ((((exists ff_h_mce_result_negative_summand. ff_h_mce_result_negative_summand + S (ff_a_mce_result_negative) = S ((S (ff_i_mce_result_negative)) * ff_vc_mce_fold_result)) /\ exists ff_q_mce_result_negative_summand. ff_vb_mce_fold_result = ff_q_mce_result_negative_summand * S ((S (ff_i_mce_result_negative)) * ff_vc_mce_fold_result) + (ff_a_mce_result_negative))) /\ ((((exists ff_h_mce_result_negative_partial. ff_h_mce_result_negative_partial + S (ff_r_mce_result_negative) = S ((S (ff_i_mce_result_negative)) * ff_v_mce_result_negative)) /\ exists ff_q_mce_result_negative_partial. ff_u_mce_result_negative = ff_q_mce_result_negative_partial * S ((S (ff_i_mce_result_negative)) * ff_v_mce_result_negative) + (ff_r_mce_result_negative))) /\ ((((exists ff_h_mce_result_negative_successor. ff_h_mce_result_negative_successor + S (ff_s_mce_result_negative) = S ((S (S ff_i_mce_result_negative)) * ff_v_mce_result_negative)) /\ exists ff_q_mce_result_negative_successor. ff_u_mce_result_negative = ff_q_mce_result_negative_successor * S ((S (S ff_i_mce_result_negative)) * ff_v_mce_result_negative) + (ff_s_mce_result_negative))) /\ ff_s_mce_result_negative = ff_r_mce_result_negative + ff_a_mce_result_negative))))))))) /\ forall r s. (exists ff_ub_mce_fold_other ff_uc_mce_fold_other ff_vb_mce_fold_other ff_vc_mce_fold_other. ((forall ff_index_mce_alternating_other_prefix. (exists ff_gap_mce_other_prefix_index. ff_gap_mce_other_prefix_index + S (ff_index_mce_alternating_other_prefix) = (l)) -> exists ff_ap_mce_alternating_other_prefix ff_an_mce_alternating_other_prefix ff_bp_mce_alternating_other_prefix ff_bn_mce_alternating_other_prefix ff_p_mce_alternating_other_prefix ff_n_mce_alternating_other_prefix. ((((exists ff_h_mce_other_prefix_ap. ff_h_mce_other_prefix_ap + S (ff_ap_mce_alternating_other_prefix) = S ((S (ff_index_mce_alternating_other_prefix)) * ac)) /\ exists ff_q_mce_other_prefix_ap. ab = ff_q_mce_other_prefix_ap * S ((S (ff_index_mce_alternating_other_prefix)) * ac) + (ff_ap_mce_alternating_other_prefix))) /\ ((((exists ff_h_mce_other_prefix_an. ff_h_mce_other_prefix_an + S (ff_an_mce_alternating_other_prefix) = S ((S (ff_index_mce_alternating_other_prefix)) * dc)) /\ exists ff_q_mce_other_prefix_an. db = ff_q_mce_other_prefix_an * S ((S (ff_index_mce_alternating_other_prefix)) * dc) + (ff_an_mce_alternating_other_prefix))) /\ ((((exists ff_h_mce_other_prefix_bp. ff_h_mce_other_prefix_bp + S (ff_bp_mce_alternating_other_prefix) = S ((S (ff_index_mce_alternating_other_prefix)) * ec)) /\ exists ff_q_mce_other_prefix_bp. eb = ff_q_mce_other_prefix_bp * S ((S (ff_index_mce_alternating_other_prefix)) * ec) + (ff_bp_mce_alternating_other_prefix))) /\ ((((exists ff_h_mce_other_prefix_bn. ff_h_mce_other_prefix_bn + S (ff_bn_mce_alternating_other_prefix) = S ((S (ff_index_mce_alternating_other_prefix)) * fc)) /\ exists ff_q_mce_other_prefix_bn. fb = ff_q_mce_other_prefix_bn * S ((S (ff_index_mce_alternating_other_prefix)) * fc) + (ff_bn_mce_alternating_other_prefix))) /\ ((((exists ff_h_mce_other_prefix_positive. ff_h_mce_other_prefix_positive + S (ff_p_mce_alternating_other_prefix) = S ((S (ff_index_mce_alternating_other_prefix)) * ff_uc_mce_fold_other)) /\ exists ff_q_mce_other_prefix_positive. ff_ub_mce_fold_other = ff_q_mce_other_prefix_positive * S ((S (ff_index_mce_alternating_other_prefix)) * ff_uc_mce_fold_other) + (ff_p_mce_alternating_other_prefix))) /\ ((((exists ff_h_mce_other_prefix_negative. ff_h_mce_other_prefix_negative + S (ff_n_mce_alternating_other_prefix) = S ((S (ff_index_mce_alternating_other_prefix)) * ff_vc_mce_fold_other)) /\ exists ff_q_mce_other_prefix_negative. ff_vb_mce_fold_other = ff_q_mce_other_prefix_negative * S ((S (ff_index_mce_alternating_other_prefix)) * ff_vc_mce_fold_other) + (ff_n_mce_alternating_other_prefix))) /\ (((exists ff_even_mce_term_other_prefix_term. ff_index_mce_alternating_other_prefix = 2 * ff_even_mce_term_other_prefix_term) /\ (ff_p_mce_alternating_other_prefix = (ff_ap_mce_alternating_other_prefix) * (ff_bp_mce_alternating_other_prefix) + (ff_an_mce_alternating_other_prefix) * (ff_bn_mce_alternating_other_prefix) /\ ff_n_mce_alternating_other_prefix = (ff_ap_mce_alternating_other_prefix) * (ff_bn_mce_alternating_other_prefix) + (ff_an_mce_alternating_other_prefix) * (ff_bp_mce_alternating_other_prefix))) \/ ((exists ff_odd_mce_term_other_prefix_term. ff_index_mce_alternating_other_prefix = 2 * ff_odd_mce_term_other_prefix_term + 1) /\ (ff_p_mce_alternating_other_prefix = (ff_ap_mce_alternating_other_prefix) * (ff_bn_mce_alternating_other_prefix) + (ff_an_mce_alternating_other_prefix) * (ff_bp_mce_alternating_other_prefix) /\ ff_n_mce_alternating_other_prefix = (ff_ap_mce_alternating_other_prefix) * (ff_bp_mce_alternating_other_prefix) + (ff_an_mce_alternating_other_prefix) * (ff_bn_mce_alternating_other_prefix))))))))))) /\ ((exists ff_u_mce_other_positive ff_v_mce_other_positive. ((((exists ff_h_mce_other_positive_start. ff_h_mce_other_positive_start + S (0) = S ((S (0)) * ff_v_mce_other_positive)) /\ exists ff_q_mce_other_positive_start. ff_u_mce_other_positive = ff_q_mce_other_positive_start * S ((S (0)) * ff_v_mce_other_positive) + (0))) /\ ((((exists ff_h_mce_other_positive_terminal. ff_h_mce_other_positive_terminal + S (r) = S ((S (l)) * ff_v_mce_other_positive)) /\ exists ff_q_mce_other_positive_terminal. ff_u_mce_other_positive = ff_q_mce_other_positive_terminal * S ((S (l)) * ff_v_mce_other_positive) + (r))) /\ forall ff_i_mce_other_positive. (exists ff_lt_mce_other_positive_bound. ff_lt_mce_other_positive_bound + S ff_i_mce_other_positive = l) -> exists ff_a_mce_other_positive ff_r_mce_other_positive ff_s_mce_other_positive. ((((exists ff_h_mce_other_positive_summand. ff_h_mce_other_positive_summand + S (ff_a_mce_other_positive) = S ((S (ff_i_mce_other_positive)) * ff_uc_mce_fold_other)) /\ exists ff_q_mce_other_positive_summand. ff_ub_mce_fold_other = ff_q_mce_other_positive_summand * S ((S (ff_i_mce_other_positive)) * ff_uc_mce_fold_other) + (ff_a_mce_other_positive))) /\ ((((exists ff_h_mce_other_positive_partial. ff_h_mce_other_positive_partial + S (ff_r_mce_other_positive) = S ((S (ff_i_mce_other_positive)) * ff_v_mce_other_positive)) /\ exists ff_q_mce_other_positive_partial. ff_u_mce_other_positive = ff_q_mce_other_positive_partial * S ((S (ff_i_mce_other_positive)) * ff_v_mce_other_positive) + (ff_r_mce_other_positive))) /\ ((((exists ff_h_mce_other_positive_successor. ff_h_mce_other_positive_successor + S (ff_s_mce_other_positive) = S ((S (S ff_i_mce_other_positive)) * ff_v_mce_other_positive)) /\ exists ff_q_mce_other_positive_successor. ff_u_mce_other_positive = ff_q_mce_other_positive_successor * S ((S (S ff_i_mce_other_positive)) * ff_v_mce_other_positive) + (ff_s_mce_other_positive))) /\ ff_s_mce_other_positive = ff_r_mce_other_positive + ff_a_mce_other_positive)))))) /\ (exists ff_u_mce_other_negative ff_v_mce_other_negative. ((((exists ff_h_mce_other_negative_start. ff_h_mce_other_negative_start + S (0) = S ((S (0)) * ff_v_mce_other_negative)) /\ exists ff_q_mce_other_negative_start. ff_u_mce_other_negative = ff_q_mce_other_negative_start * S ((S (0)) * ff_v_mce_other_negative) + (0))) /\ ((((exists ff_h_mce_other_negative_terminal. ff_h_mce_other_negative_terminal + S (s) = S ((S (l)) * ff_v_mce_other_negative)) /\ exists ff_q_mce_other_negative_terminal. ff_u_mce_other_negative = ff_q_mce_other_negative_terminal * S ((S (l)) * ff_v_mce_other_negative) + (s))) /\ forall ff_i_mce_other_negative. (exists ff_lt_mce_other_negative_bound. ff_lt_mce_other_negative_bound + S ff_i_mce_other_negative = l) -> exists ff_a_mce_other_negative ff_r_mce_other_negative ff_s_mce_other_negative. ((((exists ff_h_mce_other_negative_summand. ff_h_mce_other_negative_summand + S (ff_a_mce_other_negative) = S ((S (ff_i_mce_other_negative)) * ff_vc_mce_fold_other)) /\ exists ff_q_mce_other_negative_summand. ff_vb_mce_fold_other = ff_q_mce_other_negative_summand * S ((S (ff_i_mce_other_negative)) * ff_vc_mce_fold_other) + (ff_a_mce_other_negative))) /\ ((((exists ff_h_mce_other_negative_partial. ff_h_mce_other_negative_partial + S (ff_r_mce_other_negative) = S ((S (ff_i_mce_other_negative)) * ff_v_mce_other_negative)) /\ exists ff_q_mce_other_negative_partial. ff_u_mce_other_negative = ff_q_mce_other_negative_partial * S ((S (ff_i_mce_other_negative)) * ff_v_mce_other_negative) + (ff_r_mce_other_negative))) /\ ((((exists ff_h_mce_other_negative_successor. ff_h_mce_other_negative_successor + S (ff_s_mce_other_negative) = S ((S (S ff_i_mce_other_negative)) * ff_v_mce_other_negative)) /\ exists ff_q_mce_other_negative_successor. ff_u_mce_other_negative = ff_q_mce_other_negative_successor * S ((S (S ff_i_mce_other_negative)) * ff_v_mce_other_negative) + (ff_s_mce_other_negative))) /\ ff_s_mce_other_negative = ff_r_mce_other_negative + ff_a_mce_other_negative))))))))) -> (p = r /\ n = s))

Complete unchanged native tactic proof

All 43 lines are the exact independently kernel-checked original script.

Read the argument

Proof checkpoints

43 script commands · 9 reading checkpoints · 0 local claims

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.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

Named ingredients (2)
01Fix variables and assumptionsL1–9

Work with arbitrary variables or the premises of the current implication.

  1. L1
    intro ab
  2. L2
    intro ac
  3. L3
    intro db
  4. L4
    intro dc
  5. L5
    intro eb
  6. L6
    intro ec
  7. L7
    intro fb
  8. L8
    intro fc
  9. L9
    intro l
02Use earlier factsL10–18

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L10
    specialize signed_alternating_cofactor_fold_exists ab
  2. L11
    specialize signed_alternating_cofactor_fold_exists ac
  3. L12
    specialize signed_alternating_cofactor_fold_exists db
  4. L13
    specialize signed_alternating_cofactor_fold_exists dc
  5. L14
    specialize signed_alternating_cofactor_fold_exists eb
  6. L15
    specialize signed_alternating_cofactor_fold_exists ec
  7. L16
    specialize signed_alternating_cofactor_fold_exists fb
  8. L17
    specialize signed_alternating_cofactor_fold_exists fc
  9. L18
    specialize signed_alternating_cofactor_fold_exists l
03Separate the logical casesL19–20

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L19
    cases signed_alternating_cofactor_fold_exists
  2. L20
    cases signed_alternating_cofactor_fold_exists_witness
04Construct an explicit witnessL21–22

Supply the displayed value, then prove that it has the required property.

  1. L21
    exists x
  2. L22
    exists x1
05Separate the logical casesL23–23

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L23
    split
06Use earlier factsL24–24

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L24
    exact signed_alternating_cofactor_fold_exists_witness_witness
07Fix variables and assumptionsL25–27

Work with arbitrary variables or the premises of the current implication.

  1. L25
    intro r
  2. L26
    intro s
  3. L27
    intro hother
08Use earlier factsL28–37

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L28
    specialize signed_alternating_cofactor_fold_functional ab
  2. L29
    specialize signed_alternating_cofactor_fold_functional ac
  3. L30
    specialize signed_alternating_cofactor_fold_functional db
  4. L31
    specialize signed_alternating_cofactor_fold_functional dc
  5. L32
    specialize signed_alternating_cofactor_fold_functional eb
  6. L33
    specialize signed_alternating_cofactor_fold_functional ec
  7. L34
    specialize signed_alternating_cofactor_fold_functional fb
  8. L35
    specialize signed_alternating_cofactor_fold_functional fc
  9. L36
    specialize signed_alternating_cofactor_fold_functional l
  10. L37
    specialize signed_alternating_cofactor_fold_functional x
09Use earlier factsL38–43

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L38
    specialize signed_alternating_cofactor_fold_functional x1
  2. L39
    specialize signed_alternating_cofactor_fold_functional r
  3. L40
    specialize signed_alternating_cofactor_fold_functional s
  4. L41
    apply signed_alternating_cofactor_fold_functional
  5. L42
    exact signed_alternating_cofactor_fold_exists_witness_witness
  6. L43
    exact hother

Library-wide reading audit

Original defined command ledger · 43 lines
  1. 0001intro ab
  2. 0002intro ac
  3. 0003intro db
  4. 0004intro dc
  5. 0005intro eb
  6. 0006intro ec
  7. 0007intro fb
  8. 0008intro fc
  9. 0009intro l
  10. 0010specialize signed_alternating_cofactor_fold_exists ab
  11. 0011specialize signed_alternating_cofactor_fold_exists ac
  12. 0012specialize signed_alternating_cofactor_fold_exists db
  13. 0013specialize signed_alternating_cofactor_fold_exists dc
  14. 0014specialize signed_alternating_cofactor_fold_exists eb
  15. 0015specialize signed_alternating_cofactor_fold_exists ec
  16. 0016specialize signed_alternating_cofactor_fold_exists fb
  17. 0017specialize signed_alternating_cofactor_fold_exists fc
  18. 0018specialize signed_alternating_cofactor_fold_exists l
  19. 0019cases signed_alternating_cofactor_fold_exists
  20. 0020cases signed_alternating_cofactor_fold_exists_witness
  21. 0021exists x
  22. 0022exists x1
  23. 0023split
  24. 0024exact signed_alternating_cofactor_fold_exists_witness_witness
  25. 0025intro r
  26. 0026intro s
  27. 0027intro hother
  28. 0028specialize signed_alternating_cofactor_fold_functional ab
  29. 0029specialize signed_alternating_cofactor_fold_functional ac
  30. 0030specialize signed_alternating_cofactor_fold_functional db
  31. 0031specialize signed_alternating_cofactor_fold_functional dc
  32. 0032specialize signed_alternating_cofactor_fold_functional eb
  33. 0033specialize signed_alternating_cofactor_fold_functional ec
  34. 0034specialize signed_alternating_cofactor_fold_functional fb
  35. 0035specialize signed_alternating_cofactor_fold_functional fc
  36. 0036specialize signed_alternating_cofactor_fold_functional l
  37. 0037specialize signed_alternating_cofactor_fold_functional x
  38. 0038specialize signed_alternating_cofactor_fold_functional x1
  39. 0039specialize signed_alternating_cofactor_fold_functional r
  40. 0040specialize signed_alternating_cofactor_fold_functional s
  41. 0041apply signed_alternating_cofactor_fold_functional
  42. 0042exact signed_alternating_cofactor_fold_exists_witness_witness
  43. 0043exact hother