PA0041

all_bits_last_succ

Stable checked-use theorem · independently closed

The final entry of a nonempty all-bits prefix is zero or one.

Exact expanded PA statement

forall b c l sl. sl = S l -> (forall ff_i_successor. (exists ff_lt_successor_bound. ff_lt_successor_bound + S ff_i_successor = sl) -> exists ff_bit_successor. ((((exists ff_h_successor_decoded. ff_h_successor_decoded + S (ff_bit_successor) = S ((S (ff_i_successor)) * c)) /\ exists ff_q_successor_decoded. b = ff_q_successor_decoded * S ((S (ff_i_successor)) * c) + (ff_bit_successor))) /\ (ff_bit_successor = 0 \/ ff_bit_successor = 1))) -> exists a. ((((exists ff_h_last. ff_h_last + S (a) = S ((S (l)) * c)) /\ exists ff_q_last. b = ff_q_last * S ((S (l)) * c) + (a))) /\ (a = 0 \/ a = 1))

Structural proof guide

Generated structural guide

The final entry of a nonempty all-bits prefix is zero or one.

Use the direct prerequisites le_refl as previously established PA formulas.

The proof proceeds by equality transport (1).

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.

  1. 0001intro b
  2. 0002intro c
  3. 0003intro l
  4. 0004intro sl
  5. 0005intro hsl
  6. 0006intro hbits
  7. 0007rewrite hsl at hbits
  8. 0008specialize hbits l
  9. 0009apply hbits
  10. 0010specialize le_refl (S l)
  11. 0011exact le_refl