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 expanded first-order arithmetic statement
forall N E z. (((exists dst_positive_code_delta_append_inputtable dst_positive_scale_delta_append_inputtable dst_negative_code_delta_append_inputtable dst_negative_scale_delta_append_inputtable. (((E) = (((((dst_positive_code_delta_append_inputtable) + (dst_positive_scale_delta_append_inputtable)) * S ((dst_positive_code_delta_append_inputtable) + (dst_positive_scale_delta_append_inputtable)) + ((dst_positive_scale_delta_append_inputtable) + (dst_positive_scale_delta_append_inputtable))) + (((dst_negative_code_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)) * S ((dst_negative_code_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)) + ((dst_negative_scale_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)))) * S ((((dst_positive_code_delta_append_inputtable) + (dst_positive_scale_delta_append_inputtable)) * S ((dst_positive_code_delta_append_inputtable) + (dst_positive_scale_delta_append_inputtable)) + ((dst_positive_scale_delta_append_inputtable) + (dst_positive_scale_delta_append_inputtable))) + (((dst_negative_code_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)) * S ((dst_negative_code_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)) + ((dst_negative_scale_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)))) + ((((dst_negative_code_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)) * S ((dst_negative_code_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)) + ((dst_negative_scale_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable))) + (((dst_negative_code_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)) * S ((dst_negative_code_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)) + ((dst_negative_scale_delta_append_inputtable) + (dst_negative_scale_delta_append_inputtable)))))) /\ (forall dst_index_delta_append_inputtable. (exists pvs_le_gap_delta_append_inputtabledomain. pvs_le_gap_delta_append_inputtabledomain + (dst_index_delta_append_inputtable) = (N)) -> exists dst_positive_delta_append_inputtable dst_negative_delta_append_inputtable dst_value_delta_append_inputtable. ((((exists ff_h_pvs_delta_append_inputtableentrypositive. ff_h_pvs_delta_append_inputtableentrypositive + S (dst_positive_delta_append_inputtable) = S ((S (dst_index_delta_append_inputtable)) * dst_positive_scale_delta_append_inputtable)) /\ exists ff_q_pvs_delta_append_inputtableentrypositive. dst_positive_code_delta_append_inputtable = ff_q_pvs_delta_append_inputtableentrypositive * S ((S (dst_index_delta_append_inputtable)) * dst_positive_scale_delta_append_inputtable) + (dst_positive_delta_append_inputtable))) /\ (((((exists ff_h_pvs_delta_append_inputtableentrynegative. ff_h_pvs_delta_append_inputtableentrynegative + S (dst_negative_delta_append_inputtable) = S ((S (dst_index_delta_append_inputtable)) * dst_negative_scale_delta_append_inputtable)) /\ exists ff_q_pvs_delta_append_inputtableentrynegative. dst_negative_code_delta_append_inputtable = ff_q_pvs_delta_append_inputtableentrynegative * S ((S (dst_index_delta_append_inputtable)) * dst_negative_scale_delta_append_inputtable) + (dst_negative_delta_append_inputtable))) /\ (exists ge_balance_positive_delta_append_inputtableentryvalue ge_balance_negative_delta_append_inputtableentryvalue. (((((dst_value_delta_append_inputtable) = 2 * (ge_balance_positive_delta_append_inputtableentryvalue) /\ (ge_balance_negative_delta_append_inputtableentryvalue) = 0) \/ exists ge_signed_half_delta_append_inputtableentryvaluedecode. (((dst_value_delta_append_inputtable) = 2 * ge_signed_half_delta_append_inputtableentryvaluedecode + 1 /\ (ge_balance_positive_delta_append_inputtableentryvalue) = 0) /\ (ge_balance_negative_delta_append_inputtableentryvalue) = S ge_signed_half_delta_append_inputtableentryvaluedecode))) /\ ((dst_positive_delta_append_inputtable) + ge_balance_negative_delta_append_inputtableentryvalue = (dst_negative_delta_append_inputtable) + ge_balance_positive_delta_append_inputtableentryvalue))))))))) /\ (forall du_index_delta_append_input du_value_delta_append_input. ~(du_index_delta_append_input=0) -> (exists pvs_le_gap_delta_append_inputbound. pvs_le_gap_delta_append_inputbound + (du_index_delta_append_input) = (N)) -> (exists dst_positive_code_delta_append_inputentry dst_positive_scale_delta_append_inputentry dst_negative_code_delta_append_inputentry dst_negative_scale_delta_append_inputentry dst_positive_delta_append_inputentry dst_negative_delta_append_inputentry. (((E) = (((((dst_positive_code_delta_append_inputentry) + (dst_positive_scale_delta_append_inputentry)) * S ((dst_positive_code_delta_append_inputentry) + (dst_positive_scale_delta_append_inputentry)) + ((dst_positive_scale_delta_append_inputentry) + (dst_positive_scale_delta_append_inputentry))) + (((dst_negative_code_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)) * S ((dst_negative_code_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)) + ((dst_negative_scale_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)))) * S ((((dst_positive_code_delta_append_inputentry) + (dst_positive_scale_delta_append_inputentry)) * S ((dst_positive_code_delta_append_inputentry) + (dst_positive_scale_delta_append_inputentry)) + ((dst_positive_scale_delta_append_inputentry) + (dst_positive_scale_delta_append_inputentry))) + (((dst_negative_code_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)) * S ((dst_negative_code_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)) + ((dst_negative_scale_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)))) + ((((dst_negative_code_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)) * S ((dst_negative_code_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)) + ((dst_negative_scale_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry))) + (((dst_negative_code_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)) * S ((dst_negative_code_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)) + ((dst_negative_scale_delta_append_inputentry) + (dst_negative_scale_delta_append_inputentry)))))) /\ (((((exists ff_h_pvs_delta_append_inputentrypositive. ff_h_pvs_delta_append_inputentrypositive + S (dst_positive_delta_append_inputentry) = S ((S (du_index_delta_append_input)) * dst_positive_scale_delta_append_inputentry)) /\ exists ff_q_pvs_delta_append_inputentrypositive. dst_positive_code_delta_append_inputentry = ff_q_pvs_delta_append_inputentrypositive * S ((S (du_index_delta_append_input)) * dst_positive_scale_delta_append_inputentry) + (dst_positive_delta_append_inputentry))) /\ (((((exists ff_h_pvs_delta_append_inputentrynegative. ff_h_pvs_delta_append_inputentrynegative + S (dst_negative_delta_append_inputentry) = S ((S (du_index_delta_append_input)) * dst_negative_scale_delta_append_inputentry)) /\ exists ff_q_pvs_delta_append_inputentrynegative. dst_negative_code_delta_append_inputentry = ff_q_pvs_delta_append_inputentrynegative * S ((S (du_index_delta_append_input)) * dst_negative_scale_delta_append_inputentry) + (dst_negative_delta_append_inputentry))) /\ (exists ge_balance_positive_delta_append_inputentryvalue ge_balance_negative_delta_append_inputentryvalue. (((((du_value_delta_append_input) = 2 * (ge_balance_positive_delta_append_inputentryvalue) /\ (ge_balance_negative_delta_append_inputentryvalue) = 0) \/ exists ge_signed_half_delta_append_inputentryvaluedecode. (((du_value_delta_append_input) = 2 * ge_signed_half_delta_append_inputentryvaluedecode + 1 /\ (ge_balance_positive_delta_append_inputentryvalue) = 0) /\ (ge_balance_negative_delta_append_inputentryvalue) = S ge_signed_half_delta_append_inputentryvaluedecode))) /\ ((dst_positive_delta_append_inputentry) + ge_balance_negative_delta_append_inputentryvalue = (dst_negative_delta_append_inputentry) + ge_balance_positive_delta_append_inputentryvalue))))))))) -> ((((du_index_delta_append_input)=1 -> (du_value_delta_append_input)=2) /\ (~((du_index_delta_append_input)=1) -> (du_value_delta_append_input)=0)))))) -> ((((S N)=1 -> (z)=2) /\ (~((S N)=1) -> (z)=0))) -> exists D. (((exists dst_positive_code_delta_append_outputtable dst_positive_scale_delta_append_outputtable dst_negative_code_delta_append_outputtable dst_negative_scale_delta_append_outputtable. (((D) = (((((dst_positive_code_delta_append_outputtable) + (dst_positive_scale_delta_append_outputtable)) * S ((dst_positive_code_delta_append_outputtable) + (dst_positive_scale_delta_append_outputtable)) + ((dst_positive_scale_delta_append_outputtable) + (dst_positive_scale_delta_append_outputtable))) + (((dst_negative_code_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)) * S ((dst_negative_code_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)) + ((dst_negative_scale_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)))) * S ((((dst_positive_code_delta_append_outputtable) + (dst_positive_scale_delta_append_outputtable)) * S ((dst_positive_code_delta_append_outputtable) + (dst_positive_scale_delta_append_outputtable)) + ((dst_positive_scale_delta_append_outputtable) + (dst_positive_scale_delta_append_outputtable))) + (((dst_negative_code_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)) * S ((dst_negative_code_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)) + ((dst_negative_scale_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)))) + ((((dst_negative_code_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)) * S ((dst_negative_code_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)) + ((dst_negative_scale_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable))) + (((dst_negative_code_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)) * S ((dst_negative_code_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)) + ((dst_negative_scale_delta_append_outputtable) + (dst_negative_scale_delta_append_outputtable)))))) /\ (forall dst_index_delta_append_outputtable. (exists pvs_le_gap_delta_append_outputtabledomain. pvs_le_gap_delta_append_outputtabledomain + (dst_index_delta_append_outputtable) = (S N)) -> exists dst_positive_delta_append_outputtable dst_negative_delta_append_outputtable dst_value_delta_append_outputtable. ((((exists ff_h_pvs_delta_append_outputtableentrypositive. ff_h_pvs_delta_append_outputtableentrypositive + S (dst_positive_delta_append_outputtable) = S ((S (dst_index_delta_append_outputtable)) * dst_positive_scale_delta_append_outputtable)) /\ exists ff_q_pvs_delta_append_outputtableentrypositive. dst_positive_code_delta_append_outputtable = ff_q_pvs_delta_append_outputtableentrypositive * S ((S (dst_index_delta_append_outputtable)) * dst_positive_scale_delta_append_outputtable) + (dst_positive_delta_append_outputtable))) /\ (((((exists ff_h_pvs_delta_append_outputtableentrynegative. ff_h_pvs_delta_append_outputtableentrynegative + S (dst_negative_delta_append_outputtable) = S ((S (dst_index_delta_append_outputtable)) * dst_negative_scale_delta_append_outputtable)) /\ exists ff_q_pvs_delta_append_outputtableentrynegative. dst_negative_code_delta_append_outputtable = ff_q_pvs_delta_append_outputtableentrynegative * S ((S (dst_index_delta_append_outputtable)) * dst_negative_scale_delta_append_outputtable) + (dst_negative_delta_append_outputtable))) /\ (exists ge_balance_positive_delta_append_outputtableentryvalue ge_balance_negative_delta_append_outputtableentryvalue. (((((dst_value_delta_append_outputtable) = 2 * (ge_balance_positive_delta_append_outputtableentryvalue) /\ (ge_balance_negative_delta_append_outputtableentryvalue) = 0) \/ exists ge_signed_half_delta_append_outputtableentryvaluedecode. (((dst_value_delta_append_outputtable) = 2 * ge_signed_half_delta_append_outputtableentryvaluedecode + 1 /\ (ge_balance_positive_delta_append_outputtableentryvalue) = 0) /\ (ge_balance_negative_delta_append_outputtableentryvalue) = S ge_signed_half_delta_append_outputtableentryvaluedecode))) /\ ((dst_positive_delta_append_outputtable) + ge_balance_negative_delta_append_outputtableentryvalue = (dst_negative_delta_append_outputtable) + ge_balance_positive_delta_append_outputtableentryvalue))))))))) /\ (forall du_index_delta_append_output du_value_delta_append_output. ~(du_index_delta_append_output=0) -> (exists pvs_le_gap_delta_append_outputbound. pvs_le_gap_delta_append_outputbound + (du_index_delta_append_output) = (S N)) -> (exists dst_positive_code_delta_append_outputentry dst_positive_scale_delta_append_outputentry dst_negative_code_delta_append_outputentry dst_negative_scale_delta_append_outputentry dst_positive_delta_append_outputentry dst_negative_delta_append_outputentry. (((D) = (((((dst_positive_code_delta_append_outputentry) + (dst_positive_scale_delta_append_outputentry)) * S ((dst_positive_code_delta_append_outputentry) + (dst_positive_scale_delta_append_outputentry)) + ((dst_positive_scale_delta_append_outputentry) + (dst_positive_scale_delta_append_outputentry))) + (((dst_negative_code_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)) * S ((dst_negative_code_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)) + ((dst_negative_scale_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)))) * S ((((dst_positive_code_delta_append_outputentry) + (dst_positive_scale_delta_append_outputentry)) * S ((dst_positive_code_delta_append_outputentry) + (dst_positive_scale_delta_append_outputentry)) + ((dst_positive_scale_delta_append_outputentry) + (dst_positive_scale_delta_append_outputentry))) + (((dst_negative_code_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)) * S ((dst_negative_code_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)) + ((dst_negative_scale_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)))) + ((((dst_negative_code_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)) * S ((dst_negative_code_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)) + ((dst_negative_scale_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry))) + (((dst_negative_code_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)) * S ((dst_negative_code_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)) + ((dst_negative_scale_delta_append_outputentry) + (dst_negative_scale_delta_append_outputentry)))))) /\ (((((exists ff_h_pvs_delta_append_outputentrypositive. ff_h_pvs_delta_append_outputentrypositive + S (dst_positive_delta_append_outputentry) = S ((S (du_index_delta_append_output)) * dst_positive_scale_delta_append_outputentry)) /\ exists ff_q_pvs_delta_append_outputentrypositive. dst_positive_code_delta_append_outputentry = ff_q_pvs_delta_append_outputentrypositive * S ((S (du_index_delta_append_output)) * dst_positive_scale_delta_append_outputentry) + (dst_positive_delta_append_outputentry))) /\ (((((exists ff_h_pvs_delta_append_outputentrynegative. ff_h_pvs_delta_append_outputentrynegative + S (dst_negative_delta_append_outputentry) = S ((S (du_index_delta_append_output)) * dst_negative_scale_delta_append_outputentry)) /\ exists ff_q_pvs_delta_append_outputentrynegative. dst_negative_code_delta_append_outputentry = ff_q_pvs_delta_append_outputentrynegative * S ((S (du_index_delta_append_output)) * dst_negative_scale_delta_append_outputentry) + (dst_negative_delta_append_outputentry))) /\ (exists ge_balance_positive_delta_append_outputentryvalue ge_balance_negative_delta_append_outputentryvalue. (((((du_value_delta_append_output) = 2 * (ge_balance_positive_delta_append_outputentryvalue) /\ (ge_balance_negative_delta_append_outputentryvalue) = 0) \/ exists ge_signed_half_delta_append_outputentryvaluedecode. (((du_value_delta_append_output) = 2 * ge_signed_half_delta_append_outputentryvaluedecode + 1 /\ (ge_balance_positive_delta_append_outputentryvalue) = 0) /\ (ge_balance_negative_delta_append_outputentryvalue) = S ge_signed_half_delta_append_outputentryvaluedecode))) /\ ((dst_positive_delta_append_outputentry) + ge_balance_negative_delta_append_outputentryvalue = (dst_negative_delta_append_outputentry) + ge_balance_positive_delta_append_outputentryvalue))))))))) -> ((((du_index_delta_append_output)=1 -> (du_value_delta_append_output)=2) /\ (~((du_index_delta_append_output)=1) -> (du_value_delta_append_output)=0)))))) /\ (forall dst_index_delta_append_prefix dst_first_delta_append_prefix dst_second_delta_append_prefix. (exists pvs_gap_delta_append_prefixbound. pvs_gap_delta_append_prefixbound + S (dst_index_delta_append_prefix) = (S N)) -> (exists dst_positive_code_delta_append_prefixfirst dst_positive_scale_delta_append_prefixfirst dst_negative_code_delta_append_prefixfirst dst_negative_scale_delta_append_prefixfirst dst_positive_delta_append_prefixfirst dst_negative_delta_append_prefixfirst. (((E) = (((((dst_positive_code_delta_append_prefixfirst) + (dst_positive_scale_delta_append_prefixfirst)) * S ((dst_positive_code_delta_append_prefixfirst) + (dst_positive_scale_delta_append_prefixfirst)) + ((dst_positive_scale_delta_append_prefixfirst) + (dst_positive_scale_delta_append_prefixfirst))) + (((dst_negative_code_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)) * S ((dst_negative_code_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)) + ((dst_negative_scale_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)))) * S ((((dst_positive_code_delta_append_prefixfirst) + (dst_positive_scale_delta_append_prefixfirst)) * S ((dst_positive_code_delta_append_prefixfirst) + (dst_positive_scale_delta_append_prefixfirst)) + ((dst_positive_scale_delta_append_prefixfirst) + (dst_positive_scale_delta_append_prefixfirst))) + (((dst_negative_code_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)) * S ((dst_negative_code_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)) + ((dst_negative_scale_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)))) + ((((dst_negative_code_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)) * S ((dst_negative_code_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)) + ((dst_negative_scale_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst))) + (((dst_negative_code_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)) * S ((dst_negative_code_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)) + ((dst_negative_scale_delta_append_prefixfirst) + (dst_negative_scale_delta_append_prefixfirst)))))) /\ (((((exists ff_h_pvs_delta_append_prefixfirstpositive. ff_h_pvs_delta_append_prefixfirstpositive + S (dst_positive_delta_append_prefixfirst) = S ((S (dst_index_delta_append_prefix)) * dst_positive_scale_delta_append_prefixfirst)) /\ exists ff_q_pvs_delta_append_prefixfirstpositive. dst_positive_code_delta_append_prefixfirst = ff_q_pvs_delta_append_prefixfirstpositive * S ((S (dst_index_delta_append_prefix)) * dst_positive_scale_delta_append_prefixfirst) + (dst_positive_delta_append_prefixfirst))) /\ (((((exists ff_h_pvs_delta_append_prefixfirstnegative. ff_h_pvs_delta_append_prefixfirstnegative + S (dst_negative_delta_append_prefixfirst) = S ((S (dst_index_delta_append_prefix)) * dst_negative_scale_delta_append_prefixfirst)) /\ exists ff_q_pvs_delta_append_prefixfirstnegative. dst_negative_code_delta_append_prefixfirst = ff_q_pvs_delta_append_prefixfirstnegative * S ((S (dst_index_delta_append_prefix)) * dst_negative_scale_delta_append_prefixfirst) + (dst_negative_delta_append_prefixfirst))) /\ (exists ge_balance_positive_delta_append_prefixfirstvalue ge_balance_negative_delta_append_prefixfirstvalue. (((((dst_first_delta_append_prefix) = 2 * (ge_balance_positive_delta_append_prefixfirstvalue) /\ (ge_balance_negative_delta_append_prefixfirstvalue) = 0) \/ exists ge_signed_half_delta_append_prefixfirstvaluedecode. (((dst_first_delta_append_prefix) = 2 * ge_signed_half_delta_append_prefixfirstvaluedecode + 1 /\ (ge_balance_positive_delta_append_prefixfirstvalue) = 0) /\ (ge_balance_negative_delta_append_prefixfirstvalue) = S ge_signed_half_delta_append_prefixfirstvaluedecode))) /\ ((dst_positive_delta_append_prefixfirst) + ge_balance_negative_delta_append_prefixfirstvalue = (dst_negative_delta_append_prefixfirst) + ge_balance_positive_delta_append_prefixfirstvalue))))))))) -> (exists dst_positive_code_delta_append_prefixsecond dst_positive_scale_delta_append_prefixsecond dst_negative_code_delta_append_prefixsecond dst_negative_scale_delta_append_prefixsecond dst_positive_delta_append_prefixsecond dst_negative_delta_append_prefixsecond. (((D) = (((((dst_positive_code_delta_append_prefixsecond) + (dst_positive_scale_delta_append_prefixsecond)) * S ((dst_positive_code_delta_append_prefixsecond) + (dst_positive_scale_delta_append_prefixsecond)) + ((dst_positive_scale_delta_append_prefixsecond) + (dst_positive_scale_delta_append_prefixsecond))) + (((dst_negative_code_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)) * S ((dst_negative_code_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)) + ((dst_negative_scale_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)))) * S ((((dst_positive_code_delta_append_prefixsecond) + (dst_positive_scale_delta_append_prefixsecond)) * S ((dst_positive_code_delta_append_prefixsecond) + (dst_positive_scale_delta_append_prefixsecond)) + ((dst_positive_scale_delta_append_prefixsecond) + (dst_positive_scale_delta_append_prefixsecond))) + (((dst_negative_code_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)) * S ((dst_negative_code_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)) + ((dst_negative_scale_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)))) + ((((dst_negative_code_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)) * S ((dst_negative_code_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)) + ((dst_negative_scale_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond))) + (((dst_negative_code_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)) * S ((dst_negative_code_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)) + ((dst_negative_scale_delta_append_prefixsecond) + (dst_negative_scale_delta_append_prefixsecond)))))) /\ (((((exists ff_h_pvs_delta_append_prefixsecondpositive. ff_h_pvs_delta_append_prefixsecondpositive + S (dst_positive_delta_append_prefixsecond) = S ((S (dst_index_delta_append_prefix)) * dst_positive_scale_delta_append_prefixsecond)) /\ exists ff_q_pvs_delta_append_prefixsecondpositive. dst_positive_code_delta_append_prefixsecond = ff_q_pvs_delta_append_prefixsecondpositive * S ((S (dst_index_delta_append_prefix)) * dst_positive_scale_delta_append_prefixsecond) + (dst_positive_delta_append_prefixsecond))) /\ (((((exists ff_h_pvs_delta_append_prefixsecondnegative. ff_h_pvs_delta_append_prefixsecondnegative + S (dst_negative_delta_append_prefixsecond) = S ((S (dst_index_delta_append_prefix)) * dst_negative_scale_delta_append_prefixsecond)) /\ exists ff_q_pvs_delta_append_prefixsecondnegative. dst_negative_code_delta_append_prefixsecond = ff_q_pvs_delta_append_prefixsecondnegative * S ((S (dst_index_delta_append_prefix)) * dst_negative_scale_delta_append_prefixsecond) + (dst_negative_delta_append_prefixsecond))) /\ (exists ge_balance_positive_delta_append_prefixsecondvalue ge_balance_negative_delta_append_prefixsecondvalue. (((((dst_second_delta_append_prefix) = 2 * (ge_balance_positive_delta_append_prefixsecondvalue) /\ (ge_balance_negative_delta_append_prefixsecondvalue) = 0) \/ exists ge_signed_half_delta_append_prefixsecondvaluedecode. (((dst_second_delta_append_prefix) = 2 * ge_signed_half_delta_append_prefixsecondvaluedecode + 1 /\ (ge_balance_positive_delta_append_prefixsecondvalue) = 0) /\ (ge_balance_negative_delta_append_prefixsecondvalue) = S ge_signed_half_delta_append_prefixsecondvaluedecode))) /\ ((dst_positive_delta_append_prefixsecond) + ge_balance_negative_delta_append_prefixsecondvalue = (dst_negative_delta_append_prefixsecond) + ge_balance_positive_delta_append_prefixsecondvalue))))))))) -> dst_first_delta_append_prefix = dst_second_delta_append_prefix)Constructive proof overview
Generated structural guide
Append the separately chosen actual delta value, preserving every earlier signed entry rather than assuming a table oracle.
The unchanged tactic script uses 5 declared prerequisites and contains 77 exact native proof lines.
Alpha v34 checked-use · first admitted v31 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
arithmetic_signed_table_append Alpha theorem; checked-use authorized le_eq_or_lt Stable theorem; checked-use authorized divisor_signed_table_at_functional Alpha theorem; checked-use authorized le_of_succ_le_succ Stable theorem; checked-use authorized divisor_signed_table_lookup Alpha theorem; checked-use authorizedDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
Read the argument
Proof checkpoints
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.
01Fix variables and assumptionsL1–5
02Separate the logical casesL6–6
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L6
cases hf
03Establish hxL7–12
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply arithmetic signed table append.
- L7
have hx : ∃ G. ArithTable(S N,G) ∧ ((∀ x. ∀ y. ∀ n. Lt(x,S N) → ArithAt(F,x,y) → ArithAt(G,x,n) → y = n) ∧ ArithAt(G,S N,z))Definitions: ArithTableArithAtLt - L8
specialize arithmetic_signed_table_append (N) - L9
specialize arithmetic_signed_table_append (F) - L10
specialize arithmetic_signed_table_append (z) - L11
apply arithmetic_signed_table_append - L12
exact hf_left
04Separate the logical casesL13–15
05Construct an explicit witnessL16–16
Supply the displayed value, then prove that it has the required property.
- L16
exists x
06Separate the logical casesL17–18
07Use earlier factsL19–19
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L19
exact hx_witness_left
08Fix variables and assumptionsL20–24
09Establish hcL25–29
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le eq or lt.
10Separate the logical casesL30–30
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L30
cases hc
11Calculate and transport equalitiesL31–34
12Establish hvL35–44
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply divisor signed table at functional.
- L35
have hv : a=z - L36
specialize divisor_signed_table_at_functional (x) - L37
specialize divisor_signed_table_at_functional (S N) - L38
specialize divisor_signed_table_at_functional (a) - L39
specialize divisor_signed_table_at_functional (z) - L40
apply divisor_signed_table_at_functional - L41
exact ha - L42
exact hx_witness_right_right - L43
rewrite hc_left - L44
rewrite hc_left
13Calculate and transport equalitiesL45–46
14Use earlier factsL47–47
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L47
exact hz
15Establish hibL48–52
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le of succ le succ.
16Establish hvL53–59
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply divisor signed table lookup.
17Separate the logical casesL60–60
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L60
cases hv
18Establish heqL61–70
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hx witness right left.
Original exact command ledger · 77 lines
- 0001
intro N - 0002
intro F - 0003
intro z - 0004
intro hf - 0005
intro hz - 0006
cases hf - 0007
have hx : exists G. (((exists dst_positive_code_append_actualtable dst_positive_scale_append_actualtable dst_negative_code_append_actualtable dst_negative_scale_append_actualtable. (((G) = (((((dst_positive_code_append_actualtable) + (dst_positive_scale_append_actualtable)) * S ((dst_positive_code_append_actualtable) + (dst_positive_scale_append_actualtable)) + ((dst_positive_scale_append_actualtable) + (dst_positive_scale_append_actualtable))) + (((dst_negative_code_append_actualtable) + (dst_negative_scale_append_actualtable)) * S ((dst_negative_code_append_actualtable) + (dst_negative_scale_append_actualtable)) + ((dst_negative_scale_append_actualtable) + (dst_negative_scale_append_actualtable)))) * S ((((dst_positive_code_append_actualtable) + (dst_positive_scale_append_actualtable)) * S ((dst_positive_code_append_actualtable) + (dst_positive_scale_append_actualtable)) + ((dst_positive_scale_append_actualtable) + (dst_positive_scale_append_actualtable))) + (((dst_negative_code_append_actualtable) + (dst_negative_scale_append_actualtable)) * S ((dst_negative_code_append_actualtable) + (dst_negative_scale_append_actualtable)) + ((dst_negative_scale_append_actualtable) + (dst_negative_scale_append_actualtable)))) + ((((dst_negative_code_append_actualtable) + (dst_negative_scale_append_actualtable)) * S ((dst_negative_code_append_actualtable) + (dst_negative_scale_append_actualtable)) + ((dst_negative_scale_append_actualtable) + (dst_negative_scale_append_actualtable))) + (((dst_negative_code_append_actualtable) + (dst_negative_scale_append_actualtable)) * S ((dst_negative_code_append_actualtable) + (dst_negative_scale_append_actualtable)) + ((dst_negative_scale_append_actualtable) + (dst_negative_scale_append_actualtable)))))) /\ (forall dst_index_append_actualtable. (exists pvs_le_gap_append_actualtabledomain. pvs_le_gap_append_actualtabledomain + (dst_index_append_actualtable) = (S N)) -> exists dst_positive_append_actualtable dst_negative_append_actualtable dst_value_append_actualtable. ((((exists ff_h_pvs_append_actualtableentrypositive. ff_h_pvs_append_actualtableentrypositive + S (dst_positive_append_actualtable) = S ((S (dst_index_append_actualtable)) * dst_positive_scale_append_actualtable)) /\ exists ff_q_pvs_append_actualtableentrypositive. dst_positive_code_append_actualtable = ff_q_pvs_append_actualtableentrypositive * S ((S (dst_index_append_actualtable)) * dst_positive_scale_append_actualtable) + (dst_positive_append_actualtable))) /\ (((((exists ff_h_pvs_append_actualtableentrynegative. ff_h_pvs_append_actualtableentrynegative + S (dst_negative_append_actualtable) = S ((S (dst_index_append_actualtable)) * dst_negative_scale_append_actualtable)) /\ exists ff_q_pvs_append_actualtableentrynegative. dst_negative_code_append_actualtable = ff_q_pvs_append_actualtableentrynegative * S ((S (dst_index_append_actualtable)) * dst_negative_scale_append_actualtable) + (dst_negative_append_actualtable))) /\ (exists ge_balance_positive_append_actualtableentryvalue ge_balance_negative_append_actualtableentryvalue. (((((dst_value_append_actualtable) = 2 * (ge_balance_positive_append_actualtableentryvalue) /\ (ge_balance_negative_append_actualtableentryvalue) = 0) \/ exists ge_signed_half_append_actualtableentryvaluedecode. (((dst_value_append_actualtable) = 2 * ge_signed_half_append_actualtableentryvaluedecode + 1 /\ (ge_balance_positive_append_actualtableentryvalue) = 0) /\ (ge_balance_negative_append_actualtableentryvalue) = S ge_signed_half_append_actualtableentryvaluedecode))) /\ ((dst_positive_append_actualtable) + ge_balance_negative_append_actualtableentryvalue = (dst_negative_append_actualtable) + ge_balance_positive_append_actualtableentryvalue))))))))) /\ (((forall dst_index_append_actualprefix dst_first_append_actualprefix dst_second_append_actualprefix. (exists pvs_gap_append_actualprefixbound. pvs_gap_append_actualprefixbound + S (dst_index_append_actualprefix) = (S N)) -> (exists dst_positive_code_append_actualprefixfirst dst_positive_scale_append_actualprefixfirst dst_negative_code_append_actualprefixfirst dst_negative_scale_append_actualprefixfirst dst_positive_append_actualprefixfirst dst_negative_append_actualprefixfirst. (((F) = (((((dst_positive_code_append_actualprefixfirst) + (dst_positive_scale_append_actualprefixfirst)) * S ((dst_positive_code_append_actualprefixfirst) + (dst_positive_scale_append_actualprefixfirst)) + ((dst_positive_scale_append_actualprefixfirst) + (dst_positive_scale_append_actualprefixfirst))) + (((dst_negative_code_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)) * S ((dst_negative_code_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)) + ((dst_negative_scale_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)))) * S ((((dst_positive_code_append_actualprefixfirst) + (dst_positive_scale_append_actualprefixfirst)) * S ((dst_positive_code_append_actualprefixfirst) + (dst_positive_scale_append_actualprefixfirst)) + ((dst_positive_scale_append_actualprefixfirst) + (dst_positive_scale_append_actualprefixfirst))) + (((dst_negative_code_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)) * S ((dst_negative_code_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)) + ((dst_negative_scale_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)))) + ((((dst_negative_code_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)) * S ((dst_negative_code_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)) + ((dst_negative_scale_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst))) + (((dst_negative_code_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)) * S ((dst_negative_code_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)) + ((dst_negative_scale_append_actualprefixfirst) + (dst_negative_scale_append_actualprefixfirst)))))) /\ (((((exists ff_h_pvs_append_actualprefixfirstpositive. ff_h_pvs_append_actualprefixfirstpositive + S (dst_positive_append_actualprefixfirst) = S ((S (dst_index_append_actualprefix)) * dst_positive_scale_append_actualprefixfirst)) /\ exists ff_q_pvs_append_actualprefixfirstpositive. dst_positive_code_append_actualprefixfirst = ff_q_pvs_append_actualprefixfirstpositive * S ((S (dst_index_append_actualprefix)) * dst_positive_scale_append_actualprefixfirst) + (dst_positive_append_actualprefixfirst))) /\ (((((exists ff_h_pvs_append_actualprefixfirstnegative. ff_h_pvs_append_actualprefixfirstnegative + S (dst_negative_append_actualprefixfirst) = S ((S (dst_index_append_actualprefix)) * dst_negative_scale_append_actualprefixfirst)) /\ exists ff_q_pvs_append_actualprefixfirstnegative. dst_negative_code_append_actualprefixfirst = ff_q_pvs_append_actualprefixfirstnegative * S ((S (dst_index_append_actualprefix)) * dst_negative_scale_append_actualprefixfirst) + (dst_negative_append_actualprefixfirst))) /\ (exists ge_balance_positive_append_actualprefixfirstvalue ge_balance_negative_append_actualprefixfirstvalue. (((((dst_first_append_actualprefix) = 2 * (ge_balance_positive_append_actualprefixfirstvalue) /\ (ge_balance_negative_append_actualprefixfirstvalue) = 0) \/ exists ge_signed_half_append_actualprefixfirstvaluedecode. (((dst_first_append_actualprefix) = 2 * ge_signed_half_append_actualprefixfirstvaluedecode + 1 /\ (ge_balance_positive_append_actualprefixfirstvalue) = 0) /\ (ge_balance_negative_append_actualprefixfirstvalue) = S ge_signed_half_append_actualprefixfirstvaluedecode))) /\ ((dst_positive_append_actualprefixfirst) + ge_balance_negative_append_actualprefixfirstvalue = (dst_negative_append_actualprefixfirst) + ge_balance_positive_append_actualprefixfirstvalue))))))))) -> (exists dst_positive_code_append_actualprefixsecond dst_positive_scale_append_actualprefixsecond dst_negative_code_append_actualprefixsecond dst_negative_scale_append_actualprefixsecond dst_positive_append_actualprefixsecond dst_negative_append_actualprefixsecond. (((G) = (((((dst_positive_code_append_actualprefixsecond) + (dst_positive_scale_append_actualprefixsecond)) * S ((dst_positive_code_append_actualprefixsecond) + (dst_positive_scale_append_actualprefixsecond)) + ((dst_positive_scale_append_actualprefixsecond) + (dst_positive_scale_append_actualprefixsecond))) + (((dst_negative_code_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)) * S ((dst_negative_code_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)) + ((dst_negative_scale_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)))) * S ((((dst_positive_code_append_actualprefixsecond) + (dst_positive_scale_append_actualprefixsecond)) * S ((dst_positive_code_append_actualprefixsecond) + (dst_positive_scale_append_actualprefixsecond)) + ((dst_positive_scale_append_actualprefixsecond) + (dst_positive_scale_append_actualprefixsecond))) + (((dst_negative_code_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)) * S ((dst_negative_code_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)) + ((dst_negative_scale_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)))) + ((((dst_negative_code_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)) * S ((dst_negative_code_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)) + ((dst_negative_scale_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond))) + (((dst_negative_code_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)) * S ((dst_negative_code_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)) + ((dst_negative_scale_append_actualprefixsecond) + (dst_negative_scale_append_actualprefixsecond)))))) /\ (((((exists ff_h_pvs_append_actualprefixsecondpositive. ff_h_pvs_append_actualprefixsecondpositive + S (dst_positive_append_actualprefixsecond) = S ((S (dst_index_append_actualprefix)) * dst_positive_scale_append_actualprefixsecond)) /\ exists ff_q_pvs_append_actualprefixsecondpositive. dst_positive_code_append_actualprefixsecond = ff_q_pvs_append_actualprefixsecondpositive * S ((S (dst_index_append_actualprefix)) * dst_positive_scale_append_actualprefixsecond) + (dst_positive_append_actualprefixsecond))) /\ (((((exists ff_h_pvs_append_actualprefixsecondnegative. ff_h_pvs_append_actualprefixsecondnegative + S (dst_negative_append_actualprefixsecond) = S ((S (dst_index_append_actualprefix)) * dst_negative_scale_append_actualprefixsecond)) /\ exists ff_q_pvs_append_actualprefixsecondnegative. dst_negative_code_append_actualprefixsecond = ff_q_pvs_append_actualprefixsecondnegative * S ((S (dst_index_append_actualprefix)) * dst_negative_scale_append_actualprefixsecond) + (dst_negative_append_actualprefixsecond))) /\ (exists ge_balance_positive_append_actualprefixsecondvalue ge_balance_negative_append_actualprefixsecondvalue. (((((dst_second_append_actualprefix) = 2 * (ge_balance_positive_append_actualprefixsecondvalue) /\ (ge_balance_negative_append_actualprefixsecondvalue) = 0) \/ exists ge_signed_half_append_actualprefixsecondvaluedecode. (((dst_second_append_actualprefix) = 2 * ge_signed_half_append_actualprefixsecondvaluedecode + 1 /\ (ge_balance_positive_append_actualprefixsecondvalue) = 0) /\ (ge_balance_negative_append_actualprefixsecondvalue) = S ge_signed_half_append_actualprefixsecondvaluedecode))) /\ ((dst_positive_append_actualprefixsecond) + ge_balance_negative_append_actualprefixsecondvalue = (dst_negative_append_actualprefixsecond) + ge_balance_positive_append_actualprefixsecondvalue))))))))) -> dst_first_append_actualprefix = dst_second_append_actualprefix) /\ (exists dst_positive_code_append_actuallast dst_positive_scale_append_actuallast dst_negative_code_append_actuallast dst_negative_scale_append_actuallast dst_positive_append_actuallast dst_negative_append_actuallast. (((G) = (((((dst_positive_code_append_actuallast) + (dst_positive_scale_append_actuallast)) * S ((dst_positive_code_append_actuallast) + (dst_positive_scale_append_actuallast)) + ((dst_positive_scale_append_actuallast) + (dst_positive_scale_append_actuallast))) + (((dst_negative_code_append_actuallast) + (dst_negative_scale_append_actuallast)) * S ((dst_negative_code_append_actuallast) + (dst_negative_scale_append_actuallast)) + ((dst_negative_scale_append_actuallast) + (dst_negative_scale_append_actuallast)))) * S ((((dst_positive_code_append_actuallast) + (dst_positive_scale_append_actuallast)) * S ((dst_positive_code_append_actuallast) + (dst_positive_scale_append_actuallast)) + ((dst_positive_scale_append_actuallast) + (dst_positive_scale_append_actuallast))) + (((dst_negative_code_append_actuallast) + (dst_negative_scale_append_actuallast)) * S ((dst_negative_code_append_actuallast) + (dst_negative_scale_append_actuallast)) + ((dst_negative_scale_append_actuallast) + (dst_negative_scale_append_actuallast)))) + ((((dst_negative_code_append_actuallast) + (dst_negative_scale_append_actuallast)) * S ((dst_negative_code_append_actuallast) + (dst_negative_scale_append_actuallast)) + ((dst_negative_scale_append_actuallast) + (dst_negative_scale_append_actuallast))) + (((dst_negative_code_append_actuallast) + (dst_negative_scale_append_actuallast)) * S ((dst_negative_code_append_actuallast) + (dst_negative_scale_append_actuallast)) + ((dst_negative_scale_append_actuallast) + (dst_negative_scale_append_actuallast)))))) /\ (((((exists ff_h_pvs_append_actuallastpositive. ff_h_pvs_append_actuallastpositive + S (dst_positive_append_actuallast) = S ((S (S N)) * dst_positive_scale_append_actuallast)) /\ exists ff_q_pvs_append_actuallastpositive. dst_positive_code_append_actuallast = ff_q_pvs_append_actuallastpositive * S ((S (S N)) * dst_positive_scale_append_actuallast) + (dst_positive_append_actuallast))) /\ (((((exists ff_h_pvs_append_actuallastnegative. ff_h_pvs_append_actuallastnegative + S (dst_negative_append_actuallast) = S ((S (S N)) * dst_negative_scale_append_actuallast)) /\ exists ff_q_pvs_append_actuallastnegative. dst_negative_code_append_actuallast = ff_q_pvs_append_actuallastnegative * S ((S (S N)) * dst_negative_scale_append_actuallast) + (dst_negative_append_actuallast))) /\ (exists ge_balance_positive_append_actuallastvalue ge_balance_negative_append_actuallastvalue. (((((z) = 2 * (ge_balance_positive_append_actuallastvalue) /\ (ge_balance_negative_append_actuallastvalue) = 0) \/ exists ge_signed_half_append_actuallastvaluedecode. (((z) = 2 * ge_signed_half_append_actuallastvaluedecode + 1 /\ (ge_balance_positive_append_actuallastvalue) = 0) /\ (ge_balance_negative_append_actuallastvalue) = S ge_signed_half_append_actuallastvaluedecode))) /\ ((dst_positive_append_actuallast) + ge_balance_negative_append_actuallastvalue = (dst_negative_append_actuallast) + ge_balance_positive_append_actuallastvalue))))))))))))) - 0008
specialize arithmetic_signed_table_append (N) - 0009
specialize arithmetic_signed_table_append (F) - 0010
specialize arithmetic_signed_table_append (z) - 0011
apply arithmetic_signed_table_append - 0012
exact hf_left - 0013
cases hx - 0014
cases hx_witness - 0015
cases hx_witness_right - 0016
exists x - 0017
split - 0018
split - 0019
exact hx_witness_left - 0020
intro i - 0021
intro a - 0022
intro hi - 0023
intro hb - 0024
intro ha - 0025
have hc : i=S N \/ (exists pvs_gap_append_cases. pvs_gap_append_cases + S (i) = (S N)) - 0026
specialize le_eq_or_lt (i) - 0027
specialize le_eq_or_lt (S N) - 0028
apply le_eq_or_lt - 0029
exact hb - 0030
cases hc - 0031
rewrite hc_left at ha - 0032
rewrite hc_left at ha - 0033
rewrite hc_left at ha - 0034
rewrite hc_left at ha - 0035
have hv : a=z - 0036
specialize divisor_signed_table_at_functional (x) - 0037
specialize divisor_signed_table_at_functional (S N) - 0038
specialize divisor_signed_table_at_functional (a) - 0039
specialize divisor_signed_table_at_functional (z) - 0040
apply divisor_signed_table_at_functional - 0041
exact ha - 0042
exact hx_witness_right_right - 0043
rewrite hc_left - 0044
rewrite hc_left - 0045
rewrite hv - 0046
rewrite hv - 0047
exact hz - 0048
have hib : exists pvs_le_gap_append_old_bound. pvs_le_gap_append_old_bound + (i) = (N) - 0049
specialize le_of_succ_le_succ (i) - 0050
specialize le_of_succ_le_succ (N) - 0051
apply le_of_succ_le_succ - 0052
exact hc_right - 0053
have hv : exists v. (exists dst_positive_code_append_old_lookup dst_positive_scale_append_old_lookup dst_negative_code_append_old_lookup dst_negative_scale_append_old_lookup dst_positive_append_old_lookup dst_negative_append_old_lookup. (((F) = (((((dst_positive_code_append_old_lookup) + (dst_positive_scale_append_old_lookup)) * S ((dst_positive_code_append_old_lookup) + (dst_positive_scale_append_old_lookup)) + ((dst_positive_scale_append_old_lookup) + (dst_positive_scale_append_old_lookup))) + (((dst_negative_code_append_old_lookup) + (dst_negative_scale_append_old_lookup)) * S ((dst_negative_code_append_old_lookup) + (dst_negative_scale_append_old_lookup)) + ((dst_negative_scale_append_old_lookup) + (dst_negative_scale_append_old_lookup)))) * S ((((dst_positive_code_append_old_lookup) + (dst_positive_scale_append_old_lookup)) * S ((dst_positive_code_append_old_lookup) + (dst_positive_scale_append_old_lookup)) + ((dst_positive_scale_append_old_lookup) + (dst_positive_scale_append_old_lookup))) + (((dst_negative_code_append_old_lookup) + (dst_negative_scale_append_old_lookup)) * S ((dst_negative_code_append_old_lookup) + (dst_negative_scale_append_old_lookup)) + ((dst_negative_scale_append_old_lookup) + (dst_negative_scale_append_old_lookup)))) + ((((dst_negative_code_append_old_lookup) + (dst_negative_scale_append_old_lookup)) * S ((dst_negative_code_append_old_lookup) + (dst_negative_scale_append_old_lookup)) + ((dst_negative_scale_append_old_lookup) + (dst_negative_scale_append_old_lookup))) + (((dst_negative_code_append_old_lookup) + (dst_negative_scale_append_old_lookup)) * S ((dst_negative_code_append_old_lookup) + (dst_negative_scale_append_old_lookup)) + ((dst_negative_scale_append_old_lookup) + (dst_negative_scale_append_old_lookup)))))) /\ (((((exists ff_h_pvs_append_old_lookuppositive. ff_h_pvs_append_old_lookuppositive + S (dst_positive_append_old_lookup) = S ((S (i)) * dst_positive_scale_append_old_lookup)) /\ exists ff_q_pvs_append_old_lookuppositive. dst_positive_code_append_old_lookup = ff_q_pvs_append_old_lookuppositive * S ((S (i)) * dst_positive_scale_append_old_lookup) + (dst_positive_append_old_lookup))) /\ (((((exists ff_h_pvs_append_old_lookupnegative. ff_h_pvs_append_old_lookupnegative + S (dst_negative_append_old_lookup) = S ((S (i)) * dst_negative_scale_append_old_lookup)) /\ exists ff_q_pvs_append_old_lookupnegative. dst_negative_code_append_old_lookup = ff_q_pvs_append_old_lookupnegative * S ((S (i)) * dst_negative_scale_append_old_lookup) + (dst_negative_append_old_lookup))) /\ (exists ge_balance_positive_append_old_lookupvalue ge_balance_negative_append_old_lookupvalue. (((((v) = 2 * (ge_balance_positive_append_old_lookupvalue) /\ (ge_balance_negative_append_old_lookupvalue) = 0) \/ exists ge_signed_half_append_old_lookupvaluedecode. (((v) = 2 * ge_signed_half_append_old_lookupvaluedecode + 1 /\ (ge_balance_positive_append_old_lookupvalue) = 0) /\ (ge_balance_negative_append_old_lookupvalue) = S ge_signed_half_append_old_lookupvaluedecode))) /\ ((dst_positive_append_old_lookup) + ge_balance_negative_append_old_lookupvalue = (dst_negative_append_old_lookup) + ge_balance_positive_append_old_lookupvalue))))))))) - 0054
specialize divisor_signed_table_lookup (N) - 0055
specialize divisor_signed_table_lookup (F) - 0056
specialize divisor_signed_table_lookup (i) - 0057
apply divisor_signed_table_lookup - 0058
exact hf_left - 0059
exact hib - 0060
cases hv - 0061
have heq : x1=a - 0062
specialize hx_witness_right_left (i) - 0063
specialize hx_witness_right_left (x1) - 0064
specialize hx_witness_right_left (a) - 0065
apply hx_witness_right_left - 0066
exact hc_right - 0067
exact hv_witness - 0068
exact ha - 0069
rewrite heq at hv_witness - 0070
rewrite heq at hv_witness - 0071
specialize hf_right (i) - 0072
specialize hf_right (a) - 0073
apply hf_right - 0074
exact hi - 0075
exact hib - 0076
exact hv_witness - 0077
exact hx_witness_right_left