PA004Q

finite_injective_prefix_succ

Stable checked-use theorem · independently closed

Injectivity of a successor prefix restricts to its old prefix.

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 PA statement

forall b c n sn. sn = S n -> (forall fp_i_inj_succ fp_j_inj_succ fp_value_inj_succ. (exists fp_gap_inj_succ_i. fp_gap_inj_succ_i + S fp_i_inj_succ = sn) -> (exists fp_gap_inj_succ_j. fp_gap_inj_succ_j + S fp_j_inj_succ = sn) -> (((exists ff_h_inj_succ_left. ff_h_inj_succ_left + S (fp_value_inj_succ) = S ((S (fp_i_inj_succ)) * c)) /\ exists ff_q_inj_succ_left. b = ff_q_inj_succ_left * S ((S (fp_i_inj_succ)) * c) + (fp_value_inj_succ))) -> (((exists ff_h_inj_succ_right. ff_h_inj_succ_right + S (fp_value_inj_succ) = S ((S (fp_j_inj_succ)) * c)) /\ exists ff_q_inj_succ_right. b = ff_q_inj_succ_right * S ((S (fp_j_inj_succ)) * c) + (fp_value_inj_succ))) -> fp_i_inj_succ = fp_j_inj_succ) -> (forall fp_i_inj_prefix fp_j_inj_prefix fp_value_inj_prefix. (exists fp_gap_inj_prefix_i. fp_gap_inj_prefix_i + S fp_i_inj_prefix = n) -> (exists fp_gap_inj_prefix_j. fp_gap_inj_prefix_j + S fp_j_inj_prefix = n) -> (((exists ff_h_inj_prefix_left. ff_h_inj_prefix_left + S (fp_value_inj_prefix) = S ((S (fp_i_inj_prefix)) * c)) /\ exists ff_q_inj_prefix_left. b = ff_q_inj_prefix_left * S ((S (fp_i_inj_prefix)) * c) + (fp_value_inj_prefix))) -> (((exists ff_h_inj_prefix_right. ff_h_inj_prefix_right + S (fp_value_inj_prefix) = S ((S (fp_j_inj_prefix)) * c)) /\ exists ff_q_inj_prefix_right. b = ff_q_inj_prefix_right * S ((S (fp_j_inj_prefix)) * c) + (fp_value_inj_prefix))) -> fp_i_inj_prefix = fp_j_inj_prefix)

Structural proof guide

Generated structural guide

Injectivity of a successor prefix restricts to its old prefix.

Use the direct prerequisites le_succ as previously established PA formulas.

The proof proceeds by equality transport (2).

Referenced ingredients

Proof neighborhood

Direct dependencies

Direct dependents

Formal native tactic body

Dependencies are introduced as named hypotheses before line 1. Linked names are exact direct references. This Stable checked-use theorem is independently kernel-checked when replayed.

Read the argument

Proof checkpoints

29 script commands · 5 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.

Named ingredients (1)
01Fix variables and assumptionsL1–6

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

  1. L1
    intro b
  2. L2
    intro c
  3. L3
    intro n
  4. L4
    intro sn
  5. L5
    intro hsn
  6. L6
    intro hinj
02Calculate and transport equalitiesL7–8

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L7
    rewrite hsn at hinj
  2. L8
    rewrite hsn at hinj
03Fix variables and assumptionsL9–15

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

  1. L9
    intro i
  2. L10
    intro j
  3. L11
    intro x
  4. L12
    intro hi
  5. L13
    intro hj
  6. L14
    intro hxi
  7. L15
    intro hxj
04Use earlier factsL16–25

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

  1. L16
    specialize hinj i
  2. L17
    specialize hinj j
  3. L18
    specialize hinj x
  4. L19
    apply hinj
  5. L20
    specialize le_succ (S i)
  6. L21
    specialize le_succ n
  7. L22
    apply le_succ
  8. L23
    exact hi
  9. L24
    specialize le_succ (S j)
  10. L25
    specialize le_succ n
05Use earlier factsL26–29

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

  1. L26
    apply le_succ
  2. L27
    exact hj
  3. L28
    exact hxi
  4. L29
    exact hxj

Library-wide reading audit

Original exact command ledger · 29 lines
  1. 0001intro b
  2. 0002intro c
  3. 0003intro n
  4. 0004intro sn
  5. 0005intro hsn
  6. 0006intro hinj
  7. 0007rewrite hsn at hinj
  8. 0008rewrite hsn at hinj
  9. 0009intro i
  10. 0010intro j
  11. 0011intro x
  12. 0012intro hi
  13. 0013intro hj
  14. 0014intro hxi
  15. 0015intro hxj
  16. 0016specialize hinj i
  17. 0017specialize hinj j
  18. 0018specialize hinj x
  19. 0019apply hinj
  20. 0020specialize le_succ (S i)
  21. 0021specialize le_succ n
  22. 0022apply le_succ
  23. 0023exact hi
  24. 0024specialize le_succ (S j)
  25. 0025specialize le_succ n
  26. 0026apply le_succ
  27. 0027exact hj
  28. 0028exact hxi
  29. 0029exact hxj