JT0038

jordan_tuple_equal_congruence

Equal decoded coordinates are congruent at every modulus, including zero.

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

95 new Alpha admissions come from 96 source lemmas: tuple equality reflexivity reuses an already-admitted theorem and is not counted twice. All counts use actual finite beta-coded enumerations. G008 multiplicativity is proved; the general prime-power count and distinct-prime product formula are further goals. General prime-power fields (G091) remain open. Stable is unchanged.

Exact theorem in conservative defined notation

∀ n. ∀ b. ∀ c. ∀ d. ∀ e. ∀ k. IntegerVectorZero(b,c,d,e,k) → JordanTupleCongruence(n,b,c,d,e,k)

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

Definition DAG

Actual proof prerequisites

Original expanded first-order statement
forall n b c d e k. (forall jt_index_equalcong jt_left_equalcong jt_right_equalcong. (exists jt_gap_equalcongindex. jt_gap_equalcongindex+S (jt_index_equalcong)=(k)) -> (((exists fs_h_jt_equalcongleft. fs_h_jt_equalcongleft + S (jt_left_equalcong) = S ((S (jt_index_equalcong)) * c)) /\ exists fs_q_jt_equalcongleft. b = fs_q_jt_equalcongleft * S ((S (jt_index_equalcong)) * c) + (jt_left_equalcong))) -> (((exists fs_h_jt_equalcongright. fs_h_jt_equalcongright + S (jt_right_equalcong) = S ((S (jt_index_equalcong)) * e)) /\ exists fs_q_jt_equalcongright. d = fs_q_jt_equalcongright * S ((S (jt_index_equalcong)) * e) + (jt_right_equalcong))) -> jt_left_equalcong=jt_right_equalcong) -> (forall jt_index_equalcongresult jt_left_equalcongresult jt_right_equalcongresult. (exists jt_gap_equalcongresultindex. jt_gap_equalcongresultindex+S (jt_index_equalcongresult)=(k)) -> (((exists fs_h_jt_equalcongresultleft. fs_h_jt_equalcongresultleft + S (jt_left_equalcongresult) = S ((S (jt_index_equalcongresult)) * c)) /\ exists fs_q_jt_equalcongresultleft. b = fs_q_jt_equalcongresultleft * S ((S (jt_index_equalcongresult)) * c) + (jt_left_equalcongresult))) -> (((exists fs_h_jt_equalcongresultright. fs_h_jt_equalcongresultright + S (jt_right_equalcongresult) = S ((S (jt_index_equalcongresult)) * e)) /\ exists fs_q_jt_equalcongresultright. d = fs_q_jt_equalcongresultright * S ((S (jt_index_equalcongresult)) * e) + (jt_right_equalcongresult))) -> (exists jt_left_equalcongresultmod jt_right_equalcongresultmod. (jt_left_equalcongresult)+(n)*jt_left_equalcongresultmod=(jt_right_equalcongresult)+(n)*jt_right_equalcongresultmod))

Complete tactic proof in conservative notation

All 25 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.

Read the argument

Proof checkpoints

25 script commands · 4 reading checkpoints · 1 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.

01Fix variables and assumptionsL1–10

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

  1. L1
    intro n
  2. L2
    intro b
  3. L3
    intro c
  4. L4
    intro d
  5. L5
    intro e
  6. L6
    intro k
  7. L7
    intro heq
  8. L8
    intro i
  9. L9
    intro a
  10. L10
    intro z
02Fix variables and assumptionsL11–13

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

  1. L11
    intro hi
  2. L12
    intro ha
  3. L13
    intro hz
03Establish hvalL14–23

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply heq.

  1. L14
    have hval : a=z
  2. L15
    specialize heq (i)
  3. L16
    specialize heq (a)
  4. L17
    specialize heq (z)
  5. L18
    apply heq
  6. L19
    exact hi
  7. L20
    exact ha
  8. L21
    exact hz
  9. L22
    rewrite hval
  10. L23
    specialize mod_eq_refl (n)
04Use earlier factsL24–25

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

  1. L24
    specialize mod_eq_refl (z)
  2. L25
    apply mod_eq_refl

Library-wide reading audit

Original defined command ledger · 25 lines
  1. 0001intro n
  2. 0002intro b
  3. 0003intro c
  4. 0004intro d
  5. 0005intro e
  6. 0006intro k
  7. 0007intro heq
  8. 0008intro i
  9. 0009intro a
  10. 0010intro z
  11. 0011intro hi
  12. 0012intro ha
  13. 0013intro hz
  14. 0014have hval : a=z
  15. 0015specialize heq (i)
  16. 0016specialize heq (a)
  17. 0017specialize heq (z)
  18. 0018apply heq
  19. 0019exact hi
  20. 0020exact ha
  21. 0021exact hz
  22. 0022rewrite hval
  23. 0023specialize mod_eq_refl (n)
  24. 0024specialize mod_eq_refl (z)
  25. 0025apply mod_eq_refl