Exact expanded PA statement
forall b c w. (forall bcf_index_bpzre_before. (exists bcf_lt_gap_bpzre_before_bound. bcf_lt_gap_bpzre_before_bound + S (bcf_index_bpzre_before) = w) -> exists bcf_value_bpzre_before. ((((exists bcf_height_bpzre_before_entry. bcf_height_bpzre_before_entry + S (bcf_value_bpzre_before) = S ((S (bcf_index_bpzre_before)) * c)) /\ exists bcf_quotient_bpzre_before_entry. b = bcf_quotient_bpzre_before_entry * S ((S (bcf_index_bpzre_before)) * c) + (bcf_value_bpzre_before))) /\ ((bcf_index_bpzre_before = 0 /\ bcf_value_bpzre_before = 1) \/ exists bcf_predecessor_bpzre_before. bcf_index_bpzre_before = S bcf_predecessor_bpzre_before /\ bcf_value_bpzre_before = 0))) -> exists d e. (forall bcf_index_bpzre_after. (exists bcf_lt_gap_bpzre_after_bound. bcf_lt_gap_bpzre_after_bound + S (bcf_index_bpzre_after) = S (w)) -> exists bcf_value_bpzre_after. ((((exists bcf_height_bpzre_after_entry. bcf_height_bpzre_after_entry + S (bcf_value_bpzre_after) = S ((S (bcf_index_bpzre_after)) * e)) /\ exists bcf_quotient_bpzre_after_entry. d = bcf_quotient_bpzre_after_entry * S ((S (bcf_index_bpzre_after)) * e) + (bcf_value_bpzre_after))) /\ ((bcf_index_bpzre_after = 0 /\ bcf_value_bpzre_after = 1) \/ exists bcf_predecessor_bpzre_after. bcf_index_bpzre_after = S bcf_predecessor_bpzre_after /\ bcf_value_bpzre_after = 0)))Structural proof guide
Append the next fixed zero-row value while preserving all earlier cells.
Direct prerequisites: zero_or_succ, beta_prefix_extend, finite_lt_succ_eq_or_lt. The authored body proceeds by case analysis (14), intermediate claims (4), equality transport (4).
Proof neighborhood
Direct dependencies
Direct dependents
Formal native tactic body
Dependencies are hypotheses of this body receipt. The focused endpoint audits separately check the complete empty-context certificates.
- 0001
intro b - 0002
intro c - 0003
intro w - 0004
intro hrow - 0005
specialize zero_or_succ w - 0006
cases zero_or_succ - 0007
specialize beta_prefix_extend w - 0008
specialize beta_prefix_extend b - 0009
specialize beta_prefix_extend c - 0010
specialize beta_prefix_extend 1 - 0011
cases beta_prefix_extend - 0012
cases beta_prefix_extend_witness - 0013
cases beta_prefix_extend_witness_witness - 0014
exists x - 0015
exists x1 - 0016
intro i - 0017
intro hi - 0018
have hsplit : i = w \/ exists gap. gap + S i = w - 0019
specialize finite_lt_succ_eq_or_lt w - 0020
specialize finite_lt_succ_eq_or_lt i - 0021
apply finite_lt_succ_eq_or_lt - 0022
exact hi - 0023
cases hsplit - 0024
exists 1 - 0025
split - 0026
rewrite hsplit_left - 0027
rewrite hsplit_left - 0028
exact beta_prefix_extend_witness_witness_left - 0029
left - 0030
split - 0031
trans w - 0032
exact hsplit_left - 0033
exact zero_or_succ_left - 0034
refl - 0035
specialize hrow i - 0036
have hold : exists value. (((exists height. height + S value = S ((S i) * c)) /\ exists quotient. b = quotient * S ((S i) * c) + value) /\ ((i = 0 /\ value = 1) \/ exists predecessor. i = S predecessor /\ value = 0)) - 0037
apply hrow - 0038
exact hsplit_right - 0039
cases hold - 0040
cases hold_witness - 0041
exists x2 - 0042
split - 0043
specialize beta_prefix_extend_witness_witness_right i - 0044
specialize beta_prefix_extend_witness_witness_right x2 - 0045
apply beta_prefix_extend_witness_witness_right - 0046
exact hsplit_right - 0047
exact hold_witness_left - 0048
exact hold_witness_right - 0049
cases zero_or_succ_right - 0050
specialize beta_prefix_extend w - 0051
specialize beta_prefix_extend b - 0052
specialize beta_prefix_extend c - 0053
specialize beta_prefix_extend 0 - 0054
cases beta_prefix_extend - 0055
cases beta_prefix_extend_witness - 0056
cases beta_prefix_extend_witness_witness - 0057
exists x1 - 0058
exists x2 - 0059
intro i - 0060
intro hi - 0061
have hsplit : i = w \/ exists gap. gap + S i = w - 0062
specialize finite_lt_succ_eq_or_lt w - 0063
specialize finite_lt_succ_eq_or_lt i - 0064
apply finite_lt_succ_eq_or_lt - 0065
exact hi - 0066
cases hsplit - 0067
exists 0 - 0068
split - 0069
rewrite hsplit_left - 0070
rewrite hsplit_left - 0071
exact beta_prefix_extend_witness_witness_left - 0072
right - 0073
exists x - 0074
split - 0075
trans w - 0076
exact hsplit_left - 0077
exact zero_or_succ_right_witness - 0078
refl - 0079
specialize hrow i - 0080
have hold : exists value. (((exists height. height + S value = S ((S i) * c)) /\ exists quotient. b = quotient * S ((S i) * c) + value) /\ ((i = 0 /\ value = 1) \/ exists predecessor. i = S predecessor /\ value = 0)) - 0081
apply hrow - 0082
exact hsplit_right - 0083
cases hold - 0084
cases hold_witness - 0085
exists x3 - 0086
split - 0087
specialize beta_prefix_extend_witness_witness_right i - 0088
specialize beta_prefix_extend_witness_witness_right x3 - 0089
apply beta_prefix_extend_witness_witness_right - 0090
exact hsplit_right - 0091
exact hold_witness_left - 0092
exact hold_witness_right