LU001O

lucas_multidigit_congruence

Dependency-curried candidate body; not Alpha-enrolled; no checked-use authority

Unconditional full multidigit Lucas congruence: every actual beta-coded coherent digit pair has coefficient congruent to its terminal binomial times the complete digit-binomial product.

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 first-order arithmetic statement

forall p n k l qb qc db dc ub uc vb vc z t s w P C T. ((~(p = 1) /\ forall frm_prime_left_lmd_full_prime frm_prime_right_lmd_full_prime. p = frm_prime_left_lmd_full_prime * frm_prime_right_lmd_full_prime -> frm_prime_left_lmd_full_prime = 1 \/ frm_prime_right_lmd_full_prime = 1)) -> (((((exists ff_h_lmd_full_n_initial. ff_h_lmd_full_n_initial + S (n) = S ((S (0)) * qc)) /\ exists ff_q_lmd_full_n_initial. qb = ff_q_lmd_full_n_initial * S ((S (0)) * qc) + (n))) /\ forall lmd_index_full_n. (exists lmd_gap_full_n_index. lmd_gap_full_n_index + S (lmd_index_full_n) = (l)) -> exists lmd_current_full_n lmd_successor_full_n lmd_digit_full_n. ((((exists ff_h_lmd_full_n_current. ff_h_lmd_full_n_current + S (lmd_current_full_n) = S ((S (lmd_index_full_n)) * qc)) /\ exists ff_q_lmd_full_n_current. qb = ff_q_lmd_full_n_current * S ((S (lmd_index_full_n)) * qc) + (lmd_current_full_n))) /\ ((((exists ff_h_lmd_full_n_successor. ff_h_lmd_full_n_successor + S (lmd_successor_full_n) = S ((S (S lmd_index_full_n)) * qc)) /\ exists ff_q_lmd_full_n_successor. qb = ff_q_lmd_full_n_successor * S ((S (S lmd_index_full_n)) * qc) + (lmd_successor_full_n))) /\ ((((exists ff_h_lmd_full_n_digit. ff_h_lmd_full_n_digit + S (lmd_digit_full_n) = S ((S (lmd_index_full_n)) * dc)) /\ exists ff_q_lmd_full_n_digit. db = ff_q_lmd_full_n_digit * S ((S (lmd_index_full_n)) * dc) + (lmd_digit_full_n))) /\ ((lmd_current_full_n = (p) * (lmd_successor_full_n) + (lmd_digit_full_n)) /\ (exists lmd_gap_full_n_digit_bound. lmd_gap_full_n_digit_bound + S (lmd_digit_full_n) = (p)))))))) -> (((((exists ff_h_lmd_full_k_initial. ff_h_lmd_full_k_initial + S (k) = S ((S (0)) * uc)) /\ exists ff_q_lmd_full_k_initial. ub = ff_q_lmd_full_k_initial * S ((S (0)) * uc) + (k))) /\ forall lmd_index_full_k. (exists lmd_gap_full_k_index. lmd_gap_full_k_index + S (lmd_index_full_k) = (l)) -> exists lmd_current_full_k lmd_successor_full_k lmd_digit_full_k. ((((exists ff_h_lmd_full_k_current. ff_h_lmd_full_k_current + S (lmd_current_full_k) = S ((S (lmd_index_full_k)) * uc)) /\ exists ff_q_lmd_full_k_current. ub = ff_q_lmd_full_k_current * S ((S (lmd_index_full_k)) * uc) + (lmd_current_full_k))) /\ ((((exists ff_h_lmd_full_k_successor. ff_h_lmd_full_k_successor + S (lmd_successor_full_k) = S ((S (S lmd_index_full_k)) * uc)) /\ exists ff_q_lmd_full_k_successor. ub = ff_q_lmd_full_k_successor * S ((S (S lmd_index_full_k)) * uc) + (lmd_successor_full_k))) /\ ((((exists ff_h_lmd_full_k_digit. ff_h_lmd_full_k_digit + S (lmd_digit_full_k) = S ((S (lmd_index_full_k)) * vc)) /\ exists ff_q_lmd_full_k_digit. vb = ff_q_lmd_full_k_digit * S ((S (lmd_index_full_k)) * vc) + (lmd_digit_full_k))) /\ ((lmd_current_full_k = (p) * (lmd_successor_full_k) + (lmd_digit_full_k)) /\ (exists lmd_gap_full_k_digit_bound. lmd_gap_full_k_digit_bound + S (lmd_digit_full_k) = (p)))))))) -> (forall lmd_choose_index_full_quotient_choose. (exists lmd_gap_full_quotient_choose_bound. lmd_gap_full_quotient_choose_bound + S (lmd_choose_index_full_quotient_choose) = (S l)) -> exists lmd_choose_upper_full_quotient_choose lmd_choose_lower_full_quotient_choose lmd_choose_value_full_quotient_choose. ((((exists ff_h_lmd_full_quotient_choose_upper. ff_h_lmd_full_quotient_choose_upper + S (lmd_choose_upper_full_quotient_choose) = S ((S (lmd_choose_index_full_quotient_choose)) * qc)) /\ exists ff_q_lmd_full_quotient_choose_upper. qb = ff_q_lmd_full_quotient_choose_upper * S ((S (lmd_choose_index_full_quotient_choose)) * qc) + (lmd_choose_upper_full_quotient_choose))) /\ ((((exists ff_h_lmd_full_quotient_choose_lower. ff_h_lmd_full_quotient_choose_lower + S (lmd_choose_lower_full_quotient_choose) = S ((S (lmd_choose_index_full_quotient_choose)) * uc)) /\ exists ff_q_lmd_full_quotient_choose_lower. ub = ff_q_lmd_full_quotient_choose_lower * S ((S (lmd_choose_index_full_quotient_choose)) * uc) + (lmd_choose_lower_full_quotient_choose))) /\ ((((exists ff_h_lmd_full_quotient_choose_result. ff_h_lmd_full_quotient_choose_result + S (lmd_choose_value_full_quotient_choose) = S ((S (lmd_choose_index_full_quotient_choose)) * t)) /\ exists ff_q_lmd_full_quotient_choose_result. z = ff_q_lmd_full_quotient_choose_result * S ((S (lmd_choose_index_full_quotient_choose)) * t) + (lmd_choose_value_full_quotient_choose))) /\ (((exists bcf_lt_gap_lmd_full_quotient_choose_choose_out_of_range. bcf_lt_gap_lmd_full_quotient_choose_choose_out_of_range + S (lmd_choose_upper_full_quotient_choose) = lmd_choose_lower_full_quotient_choose) /\ lmd_choose_value_full_quotient_choose = 0) \/ ((exists bcf_le_gap_lmd_full_quotient_choose_choose_in_range. bcf_le_gap_lmd_full_quotient_choose_choose_in_range + (lmd_choose_lower_full_quotient_choose) = lmd_choose_upper_full_quotient_choose) /\ (exists bcf_row_code_code_lmd_full_quotient_choose_choose bcf_row_code_scale_lmd_full_quotient_choose_choose bcf_row_scale_code_lmd_full_quotient_choose_choose bcf_row_scale_scale_lmd_full_quotient_choose_choose bcf_row_code_lmd_full_quotient_choose_choose bcf_row_scale_lmd_full_quotient_choose_choose. ((forall bcf_row_index_lmd_full_quotient_choose_choose_table. (exists bcf_lt_gap_lmd_full_quotient_choose_choose_table_row_bound. bcf_lt_gap_lmd_full_quotient_choose_choose_table_row_bound + S (bcf_row_index_lmd_full_quotient_choose_choose_table) = S (lmd_choose_upper_full_quotient_choose)) -> exists bcf_row_code_lmd_full_quotient_choose_choose_table bcf_row_scale_lmd_full_quotient_choose_choose_table. ((((exists bcf_height_lmd_full_quotient_choose_choose_table_decoded_row_code. bcf_height_lmd_full_quotient_choose_choose_table_decoded_row_code + S (bcf_row_code_lmd_full_quotient_choose_choose_table) = S ((S (bcf_row_index_lmd_full_quotient_choose_choose_table)) * bcf_row_code_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_row_code. bcf_row_code_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_row_code * S ((S (bcf_row_index_lmd_full_quotient_choose_choose_table)) * bcf_row_code_scale_lmd_full_quotient_choose_choose) + (bcf_row_code_lmd_full_quotient_choose_choose_table))) /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_table_decoded_row_scale. bcf_height_lmd_full_quotient_choose_choose_table_decoded_row_scale + S (bcf_row_scale_lmd_full_quotient_choose_choose_table) = S ((S (bcf_row_index_lmd_full_quotient_choose_choose_table)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_row_scale. bcf_row_scale_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_row_scale * S ((S (bcf_row_index_lmd_full_quotient_choose_choose_table)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose) + (bcf_row_scale_lmd_full_quotient_choose_choose_table))) /\ ((bcf_row_index_lmd_full_quotient_choose_choose_table = 0 /\ (forall bcf_index_lmd_full_quotient_choose_choose_table_zero_row. (exists bcf_lt_gap_lmd_full_quotient_choose_choose_table_zero_row_bound. bcf_lt_gap_lmd_full_quotient_choose_choose_table_zero_row_bound + S (bcf_index_lmd_full_quotient_choose_choose_table_zero_row) = S (lmd_choose_upper_full_quotient_choose)) -> exists bcf_value_lmd_full_quotient_choose_choose_table_zero_row. ((((exists bcf_height_lmd_full_quotient_choose_choose_table_zero_row_entry. bcf_height_lmd_full_quotient_choose_choose_table_zero_row_entry + S (bcf_value_lmd_full_quotient_choose_choose_table_zero_row) = S ((S (bcf_index_lmd_full_quotient_choose_choose_table_zero_row)) * bcf_row_scale_lmd_full_quotient_choose_choose_table)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_zero_row_entry. bcf_row_code_lmd_full_quotient_choose_choose_table = bcf_quotient_lmd_full_quotient_choose_choose_table_zero_row_entry * S ((S (bcf_index_lmd_full_quotient_choose_choose_table_zero_row)) * bcf_row_scale_lmd_full_quotient_choose_choose_table) + (bcf_value_lmd_full_quotient_choose_choose_table_zero_row))) /\ ((bcf_index_lmd_full_quotient_choose_choose_table_zero_row = 0 /\ bcf_value_lmd_full_quotient_choose_choose_table_zero_row = 1) \/ exists bcf_predecessor_lmd_full_quotient_choose_choose_table_zero_row. bcf_index_lmd_full_quotient_choose_choose_table_zero_row = S bcf_predecessor_lmd_full_quotient_choose_choose_table_zero_row /\ bcf_value_lmd_full_quotient_choose_choose_table_zero_row = 0)))) \/ exists bcf_predecessor_lmd_full_quotient_choose_choose_table bcf_previous_code_lmd_full_quotient_choose_choose_table bcf_previous_scale_lmd_full_quotient_choose_choose_table. bcf_row_index_lmd_full_quotient_choose_choose_table = S bcf_predecessor_lmd_full_quotient_choose_choose_table /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_table_decoded_previous_code. bcf_height_lmd_full_quotient_choose_choose_table_decoded_previous_code + S (bcf_previous_code_lmd_full_quotient_choose_choose_table) = S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table)) * bcf_row_code_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_previous_code. bcf_row_code_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_previous_code * S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table)) * bcf_row_code_scale_lmd_full_quotient_choose_choose) + (bcf_previous_code_lmd_full_quotient_choose_choose_table))) /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_table_decoded_previous_scale. bcf_height_lmd_full_quotient_choose_choose_table_decoded_previous_scale + S (bcf_previous_scale_lmd_full_quotient_choose_choose_table) = S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_previous_scale. bcf_row_scale_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_previous_scale * S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose) + (bcf_previous_scale_lmd_full_quotient_choose_choose_table))) /\ (forall bcf_index_lmd_full_quotient_choose_choose_table_row_step. (exists bcf_lt_gap_lmd_full_quotient_choose_choose_table_row_step_bound. bcf_lt_gap_lmd_full_quotient_choose_choose_table_row_step_bound + S (bcf_index_lmd_full_quotient_choose_choose_table_row_step) = S (lmd_choose_upper_full_quotient_choose)) -> exists bcf_value_lmd_full_quotient_choose_choose_table_row_step. ((((exists bcf_height_lmd_full_quotient_choose_choose_table_row_step_entry. bcf_height_lmd_full_quotient_choose_choose_table_row_step_entry + S (bcf_value_lmd_full_quotient_choose_choose_table_row_step) = S ((S (bcf_index_lmd_full_quotient_choose_choose_table_row_step)) * bcf_row_scale_lmd_full_quotient_choose_choose_table)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_entry. bcf_row_code_lmd_full_quotient_choose_choose_table = bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_entry * S ((S (bcf_index_lmd_full_quotient_choose_choose_table_row_step)) * bcf_row_scale_lmd_full_quotient_choose_choose_table) + (bcf_value_lmd_full_quotient_choose_choose_table_row_step))) /\ ((bcf_index_lmd_full_quotient_choose_choose_table_row_step = 0 /\ bcf_value_lmd_full_quotient_choose_choose_table_row_step = 1) \/ exists bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step bcf_left_lmd_full_quotient_choose_choose_table_row_step bcf_right_lmd_full_quotient_choose_choose_table_row_step. bcf_index_lmd_full_quotient_choose_choose_table_row_step = S bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_table_row_step_previous_left. bcf_height_lmd_full_quotient_choose_choose_table_row_step_previous_left + S (bcf_left_lmd_full_quotient_choose_choose_table_row_step) = S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step)) * bcf_previous_scale_lmd_full_quotient_choose_choose_table)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_previous_left. bcf_previous_code_lmd_full_quotient_choose_choose_table = bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_previous_left * S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step)) * bcf_previous_scale_lmd_full_quotient_choose_choose_table) + (bcf_left_lmd_full_quotient_choose_choose_table_row_step))) /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_table_row_step_previous_right. bcf_height_lmd_full_quotient_choose_choose_table_row_step_previous_right + S (bcf_right_lmd_full_quotient_choose_choose_table_row_step) = S ((S (S (bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step))) * bcf_previous_scale_lmd_full_quotient_choose_choose_table)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_previous_right. bcf_previous_code_lmd_full_quotient_choose_choose_table = bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_previous_right * S ((S (S (bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step))) * bcf_previous_scale_lmd_full_quotient_choose_choose_table) + (bcf_right_lmd_full_quotient_choose_choose_table_row_step))) /\ bcf_value_lmd_full_quotient_choose_choose_table_row_step = bcf_left_lmd_full_quotient_choose_choose_table_row_step + bcf_right_lmd_full_quotient_choose_choose_table_row_step))))))))))) /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_decoded_row_code. bcf_height_lmd_full_quotient_choose_choose_decoded_row_code + S (bcf_row_code_lmd_full_quotient_choose_choose) = S ((S (lmd_choose_upper_full_quotient_choose)) * bcf_row_code_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_decoded_row_code. bcf_row_code_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_decoded_row_code * S ((S (lmd_choose_upper_full_quotient_choose)) * bcf_row_code_scale_lmd_full_quotient_choose_choose) + (bcf_row_code_lmd_full_quotient_choose_choose))) /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_decoded_row_scale. bcf_height_lmd_full_quotient_choose_choose_decoded_row_scale + S (bcf_row_scale_lmd_full_quotient_choose_choose) = S ((S (lmd_choose_upper_full_quotient_choose)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_decoded_row_scale. bcf_row_scale_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_decoded_row_scale * S ((S (lmd_choose_upper_full_quotient_choose)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose) + (bcf_row_scale_lmd_full_quotient_choose_choose))) /\ (((exists bcf_height_lmd_full_quotient_choose_choose_decoded_value. bcf_height_lmd_full_quotient_choose_choose_decoded_value + S (lmd_choose_value_full_quotient_choose) = S ((S (lmd_choose_lower_full_quotient_choose)) * bcf_row_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_decoded_value. bcf_row_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_decoded_value * S ((S (lmd_choose_lower_full_quotient_choose)) * bcf_row_scale_lmd_full_quotient_choose_choose) + (lmd_choose_value_full_quotient_choose))))))))))))) -> (forall lmd_choose_index_full_digit_choose. (exists lmd_gap_full_digit_choose_bound. lmd_gap_full_digit_choose_bound + S (lmd_choose_index_full_digit_choose) = (l)) -> exists lmd_choose_upper_full_digit_choose lmd_choose_lower_full_digit_choose lmd_choose_value_full_digit_choose. ((((exists ff_h_lmd_full_digit_choose_upper. ff_h_lmd_full_digit_choose_upper + S (lmd_choose_upper_full_digit_choose) = S ((S (lmd_choose_index_full_digit_choose)) * dc)) /\ exists ff_q_lmd_full_digit_choose_upper. db = ff_q_lmd_full_digit_choose_upper * S ((S (lmd_choose_index_full_digit_choose)) * dc) + (lmd_choose_upper_full_digit_choose))) /\ ((((exists ff_h_lmd_full_digit_choose_lower. ff_h_lmd_full_digit_choose_lower + S (lmd_choose_lower_full_digit_choose) = S ((S (lmd_choose_index_full_digit_choose)) * vc)) /\ exists ff_q_lmd_full_digit_choose_lower. vb = ff_q_lmd_full_digit_choose_lower * S ((S (lmd_choose_index_full_digit_choose)) * vc) + (lmd_choose_lower_full_digit_choose))) /\ ((((exists ff_h_lmd_full_digit_choose_result. ff_h_lmd_full_digit_choose_result + S (lmd_choose_value_full_digit_choose) = S ((S (lmd_choose_index_full_digit_choose)) * w)) /\ exists ff_q_lmd_full_digit_choose_result. s = ff_q_lmd_full_digit_choose_result * S ((S (lmd_choose_index_full_digit_choose)) * w) + (lmd_choose_value_full_digit_choose))) /\ (((exists bcf_lt_gap_lmd_full_digit_choose_choose_out_of_range. bcf_lt_gap_lmd_full_digit_choose_choose_out_of_range + S (lmd_choose_upper_full_digit_choose) = lmd_choose_lower_full_digit_choose) /\ lmd_choose_value_full_digit_choose = 0) \/ ((exists bcf_le_gap_lmd_full_digit_choose_choose_in_range. bcf_le_gap_lmd_full_digit_choose_choose_in_range + (lmd_choose_lower_full_digit_choose) = lmd_choose_upper_full_digit_choose) /\ (exists bcf_row_code_code_lmd_full_digit_choose_choose bcf_row_code_scale_lmd_full_digit_choose_choose bcf_row_scale_code_lmd_full_digit_choose_choose bcf_row_scale_scale_lmd_full_digit_choose_choose bcf_row_code_lmd_full_digit_choose_choose bcf_row_scale_lmd_full_digit_choose_choose. ((forall bcf_row_index_lmd_full_digit_choose_choose_table. (exists bcf_lt_gap_lmd_full_digit_choose_choose_table_row_bound. bcf_lt_gap_lmd_full_digit_choose_choose_table_row_bound + S (bcf_row_index_lmd_full_digit_choose_choose_table) = S (lmd_choose_upper_full_digit_choose)) -> exists bcf_row_code_lmd_full_digit_choose_choose_table bcf_row_scale_lmd_full_digit_choose_choose_table. ((((exists bcf_height_lmd_full_digit_choose_choose_table_decoded_row_code. bcf_height_lmd_full_digit_choose_choose_table_decoded_row_code + S (bcf_row_code_lmd_full_digit_choose_choose_table) = S ((S (bcf_row_index_lmd_full_digit_choose_choose_table)) * bcf_row_code_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_decoded_row_code. bcf_row_code_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_table_decoded_row_code * S ((S (bcf_row_index_lmd_full_digit_choose_choose_table)) * bcf_row_code_scale_lmd_full_digit_choose_choose) + (bcf_row_code_lmd_full_digit_choose_choose_table))) /\ ((((exists bcf_height_lmd_full_digit_choose_choose_table_decoded_row_scale. bcf_height_lmd_full_digit_choose_choose_table_decoded_row_scale + S (bcf_row_scale_lmd_full_digit_choose_choose_table) = S ((S (bcf_row_index_lmd_full_digit_choose_choose_table)) * bcf_row_scale_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_decoded_row_scale. bcf_row_scale_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_table_decoded_row_scale * S ((S (bcf_row_index_lmd_full_digit_choose_choose_table)) * bcf_row_scale_scale_lmd_full_digit_choose_choose) + (bcf_row_scale_lmd_full_digit_choose_choose_table))) /\ ((bcf_row_index_lmd_full_digit_choose_choose_table = 0 /\ (forall bcf_index_lmd_full_digit_choose_choose_table_zero_row. (exists bcf_lt_gap_lmd_full_digit_choose_choose_table_zero_row_bound. bcf_lt_gap_lmd_full_digit_choose_choose_table_zero_row_bound + S (bcf_index_lmd_full_digit_choose_choose_table_zero_row) = S (lmd_choose_upper_full_digit_choose)) -> exists bcf_value_lmd_full_digit_choose_choose_table_zero_row. ((((exists bcf_height_lmd_full_digit_choose_choose_table_zero_row_entry. bcf_height_lmd_full_digit_choose_choose_table_zero_row_entry + S (bcf_value_lmd_full_digit_choose_choose_table_zero_row) = S ((S (bcf_index_lmd_full_digit_choose_choose_table_zero_row)) * bcf_row_scale_lmd_full_digit_choose_choose_table)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_zero_row_entry. bcf_row_code_lmd_full_digit_choose_choose_table = bcf_quotient_lmd_full_digit_choose_choose_table_zero_row_entry * S ((S (bcf_index_lmd_full_digit_choose_choose_table_zero_row)) * bcf_row_scale_lmd_full_digit_choose_choose_table) + (bcf_value_lmd_full_digit_choose_choose_table_zero_row))) /\ ((bcf_index_lmd_full_digit_choose_choose_table_zero_row = 0 /\ bcf_value_lmd_full_digit_choose_choose_table_zero_row = 1) \/ exists bcf_predecessor_lmd_full_digit_choose_choose_table_zero_row. bcf_index_lmd_full_digit_choose_choose_table_zero_row = S bcf_predecessor_lmd_full_digit_choose_choose_table_zero_row /\ bcf_value_lmd_full_digit_choose_choose_table_zero_row = 0)))) \/ exists bcf_predecessor_lmd_full_digit_choose_choose_table bcf_previous_code_lmd_full_digit_choose_choose_table bcf_previous_scale_lmd_full_digit_choose_choose_table. bcf_row_index_lmd_full_digit_choose_choose_table = S bcf_predecessor_lmd_full_digit_choose_choose_table /\ ((((exists bcf_height_lmd_full_digit_choose_choose_table_decoded_previous_code. bcf_height_lmd_full_digit_choose_choose_table_decoded_previous_code + S (bcf_previous_code_lmd_full_digit_choose_choose_table) = S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table)) * bcf_row_code_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_decoded_previous_code. bcf_row_code_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_table_decoded_previous_code * S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table)) * bcf_row_code_scale_lmd_full_digit_choose_choose) + (bcf_previous_code_lmd_full_digit_choose_choose_table))) /\ ((((exists bcf_height_lmd_full_digit_choose_choose_table_decoded_previous_scale. bcf_height_lmd_full_digit_choose_choose_table_decoded_previous_scale + S (bcf_previous_scale_lmd_full_digit_choose_choose_table) = S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table)) * bcf_row_scale_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_decoded_previous_scale. bcf_row_scale_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_table_decoded_previous_scale * S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table)) * bcf_row_scale_scale_lmd_full_digit_choose_choose) + (bcf_previous_scale_lmd_full_digit_choose_choose_table))) /\ (forall bcf_index_lmd_full_digit_choose_choose_table_row_step. (exists bcf_lt_gap_lmd_full_digit_choose_choose_table_row_step_bound. bcf_lt_gap_lmd_full_digit_choose_choose_table_row_step_bound + S (bcf_index_lmd_full_digit_choose_choose_table_row_step) = S (lmd_choose_upper_full_digit_choose)) -> exists bcf_value_lmd_full_digit_choose_choose_table_row_step. ((((exists bcf_height_lmd_full_digit_choose_choose_table_row_step_entry. bcf_height_lmd_full_digit_choose_choose_table_row_step_entry + S (bcf_value_lmd_full_digit_choose_choose_table_row_step) = S ((S (bcf_index_lmd_full_digit_choose_choose_table_row_step)) * bcf_row_scale_lmd_full_digit_choose_choose_table)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_row_step_entry. bcf_row_code_lmd_full_digit_choose_choose_table = bcf_quotient_lmd_full_digit_choose_choose_table_row_step_entry * S ((S (bcf_index_lmd_full_digit_choose_choose_table_row_step)) * bcf_row_scale_lmd_full_digit_choose_choose_table) + (bcf_value_lmd_full_digit_choose_choose_table_row_step))) /\ ((bcf_index_lmd_full_digit_choose_choose_table_row_step = 0 /\ bcf_value_lmd_full_digit_choose_choose_table_row_step = 1) \/ exists bcf_predecessor_lmd_full_digit_choose_choose_table_row_step bcf_left_lmd_full_digit_choose_choose_table_row_step bcf_right_lmd_full_digit_choose_choose_table_row_step. bcf_index_lmd_full_digit_choose_choose_table_row_step = S bcf_predecessor_lmd_full_digit_choose_choose_table_row_step /\ ((((exists bcf_height_lmd_full_digit_choose_choose_table_row_step_previous_left. bcf_height_lmd_full_digit_choose_choose_table_row_step_previous_left + S (bcf_left_lmd_full_digit_choose_choose_table_row_step) = S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table_row_step)) * bcf_previous_scale_lmd_full_digit_choose_choose_table)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_row_step_previous_left. bcf_previous_code_lmd_full_digit_choose_choose_table = bcf_quotient_lmd_full_digit_choose_choose_table_row_step_previous_left * S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table_row_step)) * bcf_previous_scale_lmd_full_digit_choose_choose_table) + (bcf_left_lmd_full_digit_choose_choose_table_row_step))) /\ ((((exists bcf_height_lmd_full_digit_choose_choose_table_row_step_previous_right. bcf_height_lmd_full_digit_choose_choose_table_row_step_previous_right + S (bcf_right_lmd_full_digit_choose_choose_table_row_step) = S ((S (S (bcf_predecessor_lmd_full_digit_choose_choose_table_row_step))) * bcf_previous_scale_lmd_full_digit_choose_choose_table)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_row_step_previous_right. bcf_previous_code_lmd_full_digit_choose_choose_table = bcf_quotient_lmd_full_digit_choose_choose_table_row_step_previous_right * S ((S (S (bcf_predecessor_lmd_full_digit_choose_choose_table_row_step))) * bcf_previous_scale_lmd_full_digit_choose_choose_table) + (bcf_right_lmd_full_digit_choose_choose_table_row_step))) /\ bcf_value_lmd_full_digit_choose_choose_table_row_step = bcf_left_lmd_full_digit_choose_choose_table_row_step + bcf_right_lmd_full_digit_choose_choose_table_row_step))))))))))) /\ ((((exists bcf_height_lmd_full_digit_choose_choose_decoded_row_code. bcf_height_lmd_full_digit_choose_choose_decoded_row_code + S (bcf_row_code_lmd_full_digit_choose_choose) = S ((S (lmd_choose_upper_full_digit_choose)) * bcf_row_code_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_decoded_row_code. bcf_row_code_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_decoded_row_code * S ((S (lmd_choose_upper_full_digit_choose)) * bcf_row_code_scale_lmd_full_digit_choose_choose) + (bcf_row_code_lmd_full_digit_choose_choose))) /\ ((((exists bcf_height_lmd_full_digit_choose_choose_decoded_row_scale. bcf_height_lmd_full_digit_choose_choose_decoded_row_scale + S (bcf_row_scale_lmd_full_digit_choose_choose) = S ((S (lmd_choose_upper_full_digit_choose)) * bcf_row_scale_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_decoded_row_scale. bcf_row_scale_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_decoded_row_scale * S ((S (lmd_choose_upper_full_digit_choose)) * bcf_row_scale_scale_lmd_full_digit_choose_choose) + (bcf_row_scale_lmd_full_digit_choose_choose))) /\ (((exists bcf_height_lmd_full_digit_choose_choose_decoded_value. bcf_height_lmd_full_digit_choose_choose_decoded_value + S (lmd_choose_value_full_digit_choose) = S ((S (lmd_choose_lower_full_digit_choose)) * bcf_row_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_decoded_value. bcf_row_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_decoded_value * S ((S (lmd_choose_lower_full_digit_choose)) * bcf_row_scale_lmd_full_digit_choose_choose) + (lmd_choose_value_full_digit_choose))))))))))))) -> (exists ff_u_lmd_full_product ff_v_lmd_full_product. ((((exists ff_h_lmd_full_product_start. ff_h_lmd_full_product_start + S (1) = S ((S (0)) * ff_v_lmd_full_product)) /\ exists ff_q_lmd_full_product_start. ff_u_lmd_full_product = ff_q_lmd_full_product_start * S ((S (0)) * ff_v_lmd_full_product) + (1))) /\ ((((exists ff_h_lmd_full_product_terminal. ff_h_lmd_full_product_terminal + S (P) = S ((S (l)) * ff_v_lmd_full_product)) /\ exists ff_q_lmd_full_product_terminal. ff_u_lmd_full_product = ff_q_lmd_full_product_terminal * S ((S (l)) * ff_v_lmd_full_product) + (P))) /\ forall ff_i_lmd_full_product. (exists ff_lt_lmd_full_product_bound. ff_lt_lmd_full_product_bound + S ff_i_lmd_full_product = l) -> exists ff_p_lmd_full_product ff_r_lmd_full_product ff_s_lmd_full_product. ((((exists ff_h_lmd_full_product_factor. ff_h_lmd_full_product_factor + S (ff_p_lmd_full_product) = S ((S (ff_i_lmd_full_product)) * w)) /\ exists ff_q_lmd_full_product_factor. s = ff_q_lmd_full_product_factor * S ((S (ff_i_lmd_full_product)) * w) + (ff_p_lmd_full_product))) /\ ((((exists ff_h_lmd_full_product_partial. ff_h_lmd_full_product_partial + S (ff_r_lmd_full_product) = S ((S (ff_i_lmd_full_product)) * ff_v_lmd_full_product)) /\ exists ff_q_lmd_full_product_partial. ff_u_lmd_full_product = ff_q_lmd_full_product_partial * S ((S (ff_i_lmd_full_product)) * ff_v_lmd_full_product) + (ff_r_lmd_full_product))) /\ ((((exists ff_h_lmd_full_product_successor. ff_h_lmd_full_product_successor + S (ff_s_lmd_full_product) = S ((S (S ff_i_lmd_full_product)) * ff_v_lmd_full_product)) /\ exists ff_q_lmd_full_product_successor. ff_u_lmd_full_product = ff_q_lmd_full_product_successor * S ((S (S ff_i_lmd_full_product)) * ff_v_lmd_full_product) + (ff_s_lmd_full_product))) /\ ff_s_lmd_full_product = ff_r_lmd_full_product * ff_p_lmd_full_product)))))) -> (((exists ff_h_lmd_full_coefficient_start. ff_h_lmd_full_coefficient_start + S (C) = S ((S (0)) * t)) /\ exists ff_q_lmd_full_coefficient_start. z = ff_q_lmd_full_coefficient_start * S ((S (0)) * t) + (C))) -> (((exists ff_h_lmd_full_coefficient_end. ff_h_lmd_full_coefficient_end + S (T) = S ((S (l)) * t)) /\ exists ff_q_lmd_full_coefficient_end. z = ff_q_lmd_full_coefficient_end * S ((S (l)) * t) + (T))) -> (exists lmd_mod_left_full_result lmd_mod_right_full_result. (C) + (p) * lmd_mod_left_full_result = (T * P) + (p) * lmd_mod_right_full_result)

Constructive proof overview

Generated structural guide

Unconditional full multidigit Lucas congruence: every actual beta-coded coherent digit pair has coefficient congruent to its terminal binomial times the complete digit-binomial product.

The unchanged tactic script uses 2 declared prerequisites and contains 58 exact native proof lines.

dependency-curried kernel-checked theorem body; Alpha enrollment and checked-use authority follow separately sealed release evidence; Stable membership remains unchanged

Proof neighborhood

Direct dependencies

Direct dependents

none

Formal native tactic body

Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This dependency-curried candidate body does not grant checked theorem use or Stable membership.

Read the argument

Proof checkpoints

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

Named ingredients (2)

Long local formulas use this family’s existing definitions. Each new abbreviation was expanded back to the identical native formula, including its free-variable context. The original edition is preserved below.

01Fix variables and assumptionsL1–10

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

  1. L1
    intro p
  2. L2
    intro n
  3. L3
    intro k
  4. L4
    intro l
  5. L5
    intro qb
  6. L6
    intro qc
  7. L7
    intro db
  8. L8
    intro dc
  9. L9
    intro ub
  10. L10
    intro uc
02Fix variables and assumptionsL11–20

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

  1. L11
    intro vb
  2. L12
    intro vc
  3. L13
    intro z
  4. L14
    intro t
  5. L15
    intro s
  6. L16
    intro w
  7. L17
    intro P
  8. L18
    intro C
  9. L19
    intro T
  10. L20
    intro hprime
03Fix variables and assumptionsL21–27

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

  1. L21
    intro hnchain
  2. L22
    intro hkchain
  3. L23
    intro hquotientchoose
  4. L24
    intro hdigitchoose
  5. L25
    intro hproduct
  6. L26
    intro hstart
  7. L27
    intro hterminal
04Establish hglobalL28–37

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply lucas multidigit congruence from one step.

  1. L28
    have hglobal · expand full local formula (692 characters)have hglobal : ∀ p. ∀ n. ∀ k. ∀ l. ∀ qb. ∀ qc. ∀ db. ∀ dc. ∀ ub. ∀ uc. ∀ vb. ∀ vc. ∀ z. ∀ t. ∀ s. ∀ w. ∀ P. ∀ C. ∀ T. Prime(p) → BetaAt(qb,qc,0,n) ∧ (∀ x. Lt(x,l) → ∃ y. ∃ m. ∃ i. BetaAt(qb,qc,x,y) ∧ (BetaAt(qb,qc,S x,m) ∧ (BetaAt(db,dc,x,i) ∧ Digit(p,y,m,i)))) → BetaAt(ub,uc,0,k) ∧ (∀ x. Lt(x,l) → ∃ y. ∃ m. ∃ i. BetaAt(ub,uc,x,y) ∧ (BetaAt(ub,uc,S x,m) ∧ (BetaAt(vb,vc,x,i) ∧ Digit(p,y,m,i)))) → (∀ x. Lt(x,S l) → ∃ y. ∃ m. ∃ i. BetaAt(qb,qc,x,y) ∧ (BetaAt(ub,uc,x,m) ∧ (BetaAt(z,t,x,i) ∧ Choose(y,m,i)))) → (∀ x. Lt(x,l) → ∃ y. ∃ m. ∃ i. BetaAt(db,dc,x,y) ∧ (BetaAt(vb,vc,x,m) ∧ (BetaAt(s,w,x,i) ∧ Choose(y,m,i)))) → Product(s,w,l,P) → BetaAt(z,t,0,C) → BetaAt(z,t,l,T) → ModEq(p,C,T · P)
    Definitions: DigitLtPrimeModEqBetaAtProductChoose
  2. L29
    apply lucas_multidigit_congruence_from_one_step
  3. L30
    exact lucas_one_step_division_congruence
  4. L31
    specialize hglobal p
  5. L32
    specialize hglobal n
  6. L33
    specialize hglobal k
  7. L34
    specialize hglobal l
  8. L35
    specialize hglobal qb
  9. L36
    specialize hglobal qc
  10. L37
    specialize hglobal db
05Use earlier factsL38–47

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

  1. L38
    specialize hglobal dc
  2. L39
    specialize hglobal ub
  3. L40
    specialize hglobal uc
  4. L41
    specialize hglobal vb
  5. L42
    specialize hglobal vc
  6. L43
    specialize hglobal z
  7. L44
    specialize hglobal t
  8. L45
    specialize hglobal s
  9. L46
    specialize hglobal w
  10. L47
    specialize hglobal P
06Use earlier factsL48–57

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

  1. L48
    specialize hglobal C
  2. L49
    specialize hglobal T
  3. L50
    apply hglobal
  4. L51
    exact hprime
  5. L52
    exact hnchain
  6. L53
    exact hkchain
  7. L54
    exact hquotientchoose
  8. L55
    exact hdigitchoose
  9. L56
    exact hproduct
  10. L57
    exact hstart
07Use earlier factsL58–58

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

  1. L58
    exact hterminal

Library-wide reading audit

Original exact command ledger · 58 lines
  1. 0001intro p
  2. 0002intro n
  3. 0003intro k
  4. 0004intro l
  5. 0005intro qb
  6. 0006intro qc
  7. 0007intro db
  8. 0008intro dc
  9. 0009intro ub
  10. 0010intro uc
  11. 0011intro vb
  12. 0012intro vc
  13. 0013intro z
  14. 0014intro t
  15. 0015intro s
  16. 0016intro w
  17. 0017intro P
  18. 0018intro C
  19. 0019intro T
  20. 0020intro hprime
  21. 0021intro hnchain
  22. 0022intro hkchain
  23. 0023intro hquotientchoose
  24. 0024intro hdigitchoose
  25. 0025intro hproduct
  26. 0026intro hstart
  27. 0027intro hterminal
  28. 0028have hglobal : forall p n k l qb qc db dc ub uc vb vc z t s w P C T. ((~(p = 1) /\ forall frm_prime_left_lmd_full_prime frm_prime_right_lmd_full_prime. p = frm_prime_left_lmd_full_prime * frm_prime_right_lmd_full_prime -> frm_prime_left_lmd_full_prime = 1 \/ frm_prime_right_lmd_full_prime = 1)) -> (((((exists ff_h_lmd_full_n_initial. ff_h_lmd_full_n_initial + S (n) = S ((S (0)) * qc)) /\ exists ff_q_lmd_full_n_initial. qb = ff_q_lmd_full_n_initial * S ((S (0)) * qc) + (n))) /\ forall lmd_index_full_n. (exists lmd_gap_full_n_index. lmd_gap_full_n_index + S (lmd_index_full_n) = (l)) -> exists lmd_current_full_n lmd_successor_full_n lmd_digit_full_n. ((((exists ff_h_lmd_full_n_current. ff_h_lmd_full_n_current + S (lmd_current_full_n) = S ((S (lmd_index_full_n)) * qc)) /\ exists ff_q_lmd_full_n_current. qb = ff_q_lmd_full_n_current * S ((S (lmd_index_full_n)) * qc) + (lmd_current_full_n))) /\ ((((exists ff_h_lmd_full_n_successor. ff_h_lmd_full_n_successor + S (lmd_successor_full_n) = S ((S (S lmd_index_full_n)) * qc)) /\ exists ff_q_lmd_full_n_successor. qb = ff_q_lmd_full_n_successor * S ((S (S lmd_index_full_n)) * qc) + (lmd_successor_full_n))) /\ ((((exists ff_h_lmd_full_n_digit. ff_h_lmd_full_n_digit + S (lmd_digit_full_n) = S ((S (lmd_index_full_n)) * dc)) /\ exists ff_q_lmd_full_n_digit. db = ff_q_lmd_full_n_digit * S ((S (lmd_index_full_n)) * dc) + (lmd_digit_full_n))) /\ ((lmd_current_full_n = (p) * (lmd_successor_full_n) + (lmd_digit_full_n)) /\ (exists lmd_gap_full_n_digit_bound. lmd_gap_full_n_digit_bound + S (lmd_digit_full_n) = (p)))))))) -> (((((exists ff_h_lmd_full_k_initial. ff_h_lmd_full_k_initial + S (k) = S ((S (0)) * uc)) /\ exists ff_q_lmd_full_k_initial. ub = ff_q_lmd_full_k_initial * S ((S (0)) * uc) + (k))) /\ forall lmd_index_full_k. (exists lmd_gap_full_k_index. lmd_gap_full_k_index + S (lmd_index_full_k) = (l)) -> exists lmd_current_full_k lmd_successor_full_k lmd_digit_full_k. ((((exists ff_h_lmd_full_k_current. ff_h_lmd_full_k_current + S (lmd_current_full_k) = S ((S (lmd_index_full_k)) * uc)) /\ exists ff_q_lmd_full_k_current. ub = ff_q_lmd_full_k_current * S ((S (lmd_index_full_k)) * uc) + (lmd_current_full_k))) /\ ((((exists ff_h_lmd_full_k_successor. ff_h_lmd_full_k_successor + S (lmd_successor_full_k) = S ((S (S lmd_index_full_k)) * uc)) /\ exists ff_q_lmd_full_k_successor. ub = ff_q_lmd_full_k_successor * S ((S (S lmd_index_full_k)) * uc) + (lmd_successor_full_k))) /\ ((((exists ff_h_lmd_full_k_digit. ff_h_lmd_full_k_digit + S (lmd_digit_full_k) = S ((S (lmd_index_full_k)) * vc)) /\ exists ff_q_lmd_full_k_digit. vb = ff_q_lmd_full_k_digit * S ((S (lmd_index_full_k)) * vc) + (lmd_digit_full_k))) /\ ((lmd_current_full_k = (p) * (lmd_successor_full_k) + (lmd_digit_full_k)) /\ (exists lmd_gap_full_k_digit_bound. lmd_gap_full_k_digit_bound + S (lmd_digit_full_k) = (p)))))))) -> (forall lmd_choose_index_full_quotient_choose. (exists lmd_gap_full_quotient_choose_bound. lmd_gap_full_quotient_choose_bound + S (lmd_choose_index_full_quotient_choose) = (S l)) -> exists lmd_choose_upper_full_quotient_choose lmd_choose_lower_full_quotient_choose lmd_choose_value_full_quotient_choose. ((((exists ff_h_lmd_full_quotient_choose_upper. ff_h_lmd_full_quotient_choose_upper + S (lmd_choose_upper_full_quotient_choose) = S ((S (lmd_choose_index_full_quotient_choose)) * qc)) /\ exists ff_q_lmd_full_quotient_choose_upper. qb = ff_q_lmd_full_quotient_choose_upper * S ((S (lmd_choose_index_full_quotient_choose)) * qc) + (lmd_choose_upper_full_quotient_choose))) /\ ((((exists ff_h_lmd_full_quotient_choose_lower. ff_h_lmd_full_quotient_choose_lower + S (lmd_choose_lower_full_quotient_choose) = S ((S (lmd_choose_index_full_quotient_choose)) * uc)) /\ exists ff_q_lmd_full_quotient_choose_lower. ub = ff_q_lmd_full_quotient_choose_lower * S ((S (lmd_choose_index_full_quotient_choose)) * uc) + (lmd_choose_lower_full_quotient_choose))) /\ ((((exists ff_h_lmd_full_quotient_choose_result. ff_h_lmd_full_quotient_choose_result + S (lmd_choose_value_full_quotient_choose) = S ((S (lmd_choose_index_full_quotient_choose)) * t)) /\ exists ff_q_lmd_full_quotient_choose_result. z = ff_q_lmd_full_quotient_choose_result * S ((S (lmd_choose_index_full_quotient_choose)) * t) + (lmd_choose_value_full_quotient_choose))) /\ (((exists bcf_lt_gap_lmd_full_quotient_choose_choose_out_of_range. bcf_lt_gap_lmd_full_quotient_choose_choose_out_of_range + S (lmd_choose_upper_full_quotient_choose) = lmd_choose_lower_full_quotient_choose) /\ lmd_choose_value_full_quotient_choose = 0) \/ ((exists bcf_le_gap_lmd_full_quotient_choose_choose_in_range. bcf_le_gap_lmd_full_quotient_choose_choose_in_range + (lmd_choose_lower_full_quotient_choose) = lmd_choose_upper_full_quotient_choose) /\ (exists bcf_row_code_code_lmd_full_quotient_choose_choose bcf_row_code_scale_lmd_full_quotient_choose_choose bcf_row_scale_code_lmd_full_quotient_choose_choose bcf_row_scale_scale_lmd_full_quotient_choose_choose bcf_row_code_lmd_full_quotient_choose_choose bcf_row_scale_lmd_full_quotient_choose_choose. ((forall bcf_row_index_lmd_full_quotient_choose_choose_table. (exists bcf_lt_gap_lmd_full_quotient_choose_choose_table_row_bound. bcf_lt_gap_lmd_full_quotient_choose_choose_table_row_bound + S (bcf_row_index_lmd_full_quotient_choose_choose_table) = S (lmd_choose_upper_full_quotient_choose)) -> exists bcf_row_code_lmd_full_quotient_choose_choose_table bcf_row_scale_lmd_full_quotient_choose_choose_table. ((((exists bcf_height_lmd_full_quotient_choose_choose_table_decoded_row_code. bcf_height_lmd_full_quotient_choose_choose_table_decoded_row_code + S (bcf_row_code_lmd_full_quotient_choose_choose_table) = S ((S (bcf_row_index_lmd_full_quotient_choose_choose_table)) * bcf_row_code_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_row_code. bcf_row_code_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_row_code * S ((S (bcf_row_index_lmd_full_quotient_choose_choose_table)) * bcf_row_code_scale_lmd_full_quotient_choose_choose) + (bcf_row_code_lmd_full_quotient_choose_choose_table))) /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_table_decoded_row_scale. bcf_height_lmd_full_quotient_choose_choose_table_decoded_row_scale + S (bcf_row_scale_lmd_full_quotient_choose_choose_table) = S ((S (bcf_row_index_lmd_full_quotient_choose_choose_table)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_row_scale. bcf_row_scale_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_row_scale * S ((S (bcf_row_index_lmd_full_quotient_choose_choose_table)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose) + (bcf_row_scale_lmd_full_quotient_choose_choose_table))) /\ ((bcf_row_index_lmd_full_quotient_choose_choose_table = 0 /\ (forall bcf_index_lmd_full_quotient_choose_choose_table_zero_row. (exists bcf_lt_gap_lmd_full_quotient_choose_choose_table_zero_row_bound. bcf_lt_gap_lmd_full_quotient_choose_choose_table_zero_row_bound + S (bcf_index_lmd_full_quotient_choose_choose_table_zero_row) = S (lmd_choose_upper_full_quotient_choose)) -> exists bcf_value_lmd_full_quotient_choose_choose_table_zero_row. ((((exists bcf_height_lmd_full_quotient_choose_choose_table_zero_row_entry. bcf_height_lmd_full_quotient_choose_choose_table_zero_row_entry + S (bcf_value_lmd_full_quotient_choose_choose_table_zero_row) = S ((S (bcf_index_lmd_full_quotient_choose_choose_table_zero_row)) * bcf_row_scale_lmd_full_quotient_choose_choose_table)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_zero_row_entry. bcf_row_code_lmd_full_quotient_choose_choose_table = bcf_quotient_lmd_full_quotient_choose_choose_table_zero_row_entry * S ((S (bcf_index_lmd_full_quotient_choose_choose_table_zero_row)) * bcf_row_scale_lmd_full_quotient_choose_choose_table) + (bcf_value_lmd_full_quotient_choose_choose_table_zero_row))) /\ ((bcf_index_lmd_full_quotient_choose_choose_table_zero_row = 0 /\ bcf_value_lmd_full_quotient_choose_choose_table_zero_row = 1) \/ exists bcf_predecessor_lmd_full_quotient_choose_choose_table_zero_row. bcf_index_lmd_full_quotient_choose_choose_table_zero_row = S bcf_predecessor_lmd_full_quotient_choose_choose_table_zero_row /\ bcf_value_lmd_full_quotient_choose_choose_table_zero_row = 0)))) \/ exists bcf_predecessor_lmd_full_quotient_choose_choose_table bcf_previous_code_lmd_full_quotient_choose_choose_table bcf_previous_scale_lmd_full_quotient_choose_choose_table. bcf_row_index_lmd_full_quotient_choose_choose_table = S bcf_predecessor_lmd_full_quotient_choose_choose_table /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_table_decoded_previous_code. bcf_height_lmd_full_quotient_choose_choose_table_decoded_previous_code + S (bcf_previous_code_lmd_full_quotient_choose_choose_table) = S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table)) * bcf_row_code_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_previous_code. bcf_row_code_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_previous_code * S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table)) * bcf_row_code_scale_lmd_full_quotient_choose_choose) + (bcf_previous_code_lmd_full_quotient_choose_choose_table))) /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_table_decoded_previous_scale. bcf_height_lmd_full_quotient_choose_choose_table_decoded_previous_scale + S (bcf_previous_scale_lmd_full_quotient_choose_choose_table) = S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_previous_scale. bcf_row_scale_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_table_decoded_previous_scale * S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose) + (bcf_previous_scale_lmd_full_quotient_choose_choose_table))) /\ (forall bcf_index_lmd_full_quotient_choose_choose_table_row_step. (exists bcf_lt_gap_lmd_full_quotient_choose_choose_table_row_step_bound. bcf_lt_gap_lmd_full_quotient_choose_choose_table_row_step_bound + S (bcf_index_lmd_full_quotient_choose_choose_table_row_step) = S (lmd_choose_upper_full_quotient_choose)) -> exists bcf_value_lmd_full_quotient_choose_choose_table_row_step. ((((exists bcf_height_lmd_full_quotient_choose_choose_table_row_step_entry. bcf_height_lmd_full_quotient_choose_choose_table_row_step_entry + S (bcf_value_lmd_full_quotient_choose_choose_table_row_step) = S ((S (bcf_index_lmd_full_quotient_choose_choose_table_row_step)) * bcf_row_scale_lmd_full_quotient_choose_choose_table)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_entry. bcf_row_code_lmd_full_quotient_choose_choose_table = bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_entry * S ((S (bcf_index_lmd_full_quotient_choose_choose_table_row_step)) * bcf_row_scale_lmd_full_quotient_choose_choose_table) + (bcf_value_lmd_full_quotient_choose_choose_table_row_step))) /\ ((bcf_index_lmd_full_quotient_choose_choose_table_row_step = 0 /\ bcf_value_lmd_full_quotient_choose_choose_table_row_step = 1) \/ exists bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step bcf_left_lmd_full_quotient_choose_choose_table_row_step bcf_right_lmd_full_quotient_choose_choose_table_row_step. bcf_index_lmd_full_quotient_choose_choose_table_row_step = S bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_table_row_step_previous_left. bcf_height_lmd_full_quotient_choose_choose_table_row_step_previous_left + S (bcf_left_lmd_full_quotient_choose_choose_table_row_step) = S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step)) * bcf_previous_scale_lmd_full_quotient_choose_choose_table)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_previous_left. bcf_previous_code_lmd_full_quotient_choose_choose_table = bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_previous_left * S ((S (bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step)) * bcf_previous_scale_lmd_full_quotient_choose_choose_table) + (bcf_left_lmd_full_quotient_choose_choose_table_row_step))) /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_table_row_step_previous_right. bcf_height_lmd_full_quotient_choose_choose_table_row_step_previous_right + S (bcf_right_lmd_full_quotient_choose_choose_table_row_step) = S ((S (S (bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step))) * bcf_previous_scale_lmd_full_quotient_choose_choose_table)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_previous_right. bcf_previous_code_lmd_full_quotient_choose_choose_table = bcf_quotient_lmd_full_quotient_choose_choose_table_row_step_previous_right * S ((S (S (bcf_predecessor_lmd_full_quotient_choose_choose_table_row_step))) * bcf_previous_scale_lmd_full_quotient_choose_choose_table) + (bcf_right_lmd_full_quotient_choose_choose_table_row_step))) /\ bcf_value_lmd_full_quotient_choose_choose_table_row_step = bcf_left_lmd_full_quotient_choose_choose_table_row_step + bcf_right_lmd_full_quotient_choose_choose_table_row_step))))))))))) /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_decoded_row_code. bcf_height_lmd_full_quotient_choose_choose_decoded_row_code + S (bcf_row_code_lmd_full_quotient_choose_choose) = S ((S (lmd_choose_upper_full_quotient_choose)) * bcf_row_code_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_decoded_row_code. bcf_row_code_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_decoded_row_code * S ((S (lmd_choose_upper_full_quotient_choose)) * bcf_row_code_scale_lmd_full_quotient_choose_choose) + (bcf_row_code_lmd_full_quotient_choose_choose))) /\ ((((exists bcf_height_lmd_full_quotient_choose_choose_decoded_row_scale. bcf_height_lmd_full_quotient_choose_choose_decoded_row_scale + S (bcf_row_scale_lmd_full_quotient_choose_choose) = S ((S (lmd_choose_upper_full_quotient_choose)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_decoded_row_scale. bcf_row_scale_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_decoded_row_scale * S ((S (lmd_choose_upper_full_quotient_choose)) * bcf_row_scale_scale_lmd_full_quotient_choose_choose) + (bcf_row_scale_lmd_full_quotient_choose_choose))) /\ (((exists bcf_height_lmd_full_quotient_choose_choose_decoded_value. bcf_height_lmd_full_quotient_choose_choose_decoded_value + S (lmd_choose_value_full_quotient_choose) = S ((S (lmd_choose_lower_full_quotient_choose)) * bcf_row_scale_lmd_full_quotient_choose_choose)) /\ exists bcf_quotient_lmd_full_quotient_choose_choose_decoded_value. bcf_row_code_lmd_full_quotient_choose_choose = bcf_quotient_lmd_full_quotient_choose_choose_decoded_value * S ((S (lmd_choose_lower_full_quotient_choose)) * bcf_row_scale_lmd_full_quotient_choose_choose) + (lmd_choose_value_full_quotient_choose))))))))))))) -> (forall lmd_choose_index_full_digit_choose. (exists lmd_gap_full_digit_choose_bound. lmd_gap_full_digit_choose_bound + S (lmd_choose_index_full_digit_choose) = (l)) -> exists lmd_choose_upper_full_digit_choose lmd_choose_lower_full_digit_choose lmd_choose_value_full_digit_choose. ((((exists ff_h_lmd_full_digit_choose_upper. ff_h_lmd_full_digit_choose_upper + S (lmd_choose_upper_full_digit_choose) = S ((S (lmd_choose_index_full_digit_choose)) * dc)) /\ exists ff_q_lmd_full_digit_choose_upper. db = ff_q_lmd_full_digit_choose_upper * S ((S (lmd_choose_index_full_digit_choose)) * dc) + (lmd_choose_upper_full_digit_choose))) /\ ((((exists ff_h_lmd_full_digit_choose_lower. ff_h_lmd_full_digit_choose_lower + S (lmd_choose_lower_full_digit_choose) = S ((S (lmd_choose_index_full_digit_choose)) * vc)) /\ exists ff_q_lmd_full_digit_choose_lower. vb = ff_q_lmd_full_digit_choose_lower * S ((S (lmd_choose_index_full_digit_choose)) * vc) + (lmd_choose_lower_full_digit_choose))) /\ ((((exists ff_h_lmd_full_digit_choose_result. ff_h_lmd_full_digit_choose_result + S (lmd_choose_value_full_digit_choose) = S ((S (lmd_choose_index_full_digit_choose)) * w)) /\ exists ff_q_lmd_full_digit_choose_result. s = ff_q_lmd_full_digit_choose_result * S ((S (lmd_choose_index_full_digit_choose)) * w) + (lmd_choose_value_full_digit_choose))) /\ (((exists bcf_lt_gap_lmd_full_digit_choose_choose_out_of_range. bcf_lt_gap_lmd_full_digit_choose_choose_out_of_range + S (lmd_choose_upper_full_digit_choose) = lmd_choose_lower_full_digit_choose) /\ lmd_choose_value_full_digit_choose = 0) \/ ((exists bcf_le_gap_lmd_full_digit_choose_choose_in_range. bcf_le_gap_lmd_full_digit_choose_choose_in_range + (lmd_choose_lower_full_digit_choose) = lmd_choose_upper_full_digit_choose) /\ (exists bcf_row_code_code_lmd_full_digit_choose_choose bcf_row_code_scale_lmd_full_digit_choose_choose bcf_row_scale_code_lmd_full_digit_choose_choose bcf_row_scale_scale_lmd_full_digit_choose_choose bcf_row_code_lmd_full_digit_choose_choose bcf_row_scale_lmd_full_digit_choose_choose. ((forall bcf_row_index_lmd_full_digit_choose_choose_table. (exists bcf_lt_gap_lmd_full_digit_choose_choose_table_row_bound. bcf_lt_gap_lmd_full_digit_choose_choose_table_row_bound + S (bcf_row_index_lmd_full_digit_choose_choose_table) = S (lmd_choose_upper_full_digit_choose)) -> exists bcf_row_code_lmd_full_digit_choose_choose_table bcf_row_scale_lmd_full_digit_choose_choose_table. ((((exists bcf_height_lmd_full_digit_choose_choose_table_decoded_row_code. bcf_height_lmd_full_digit_choose_choose_table_decoded_row_code + S (bcf_row_code_lmd_full_digit_choose_choose_table) = S ((S (bcf_row_index_lmd_full_digit_choose_choose_table)) * bcf_row_code_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_decoded_row_code. bcf_row_code_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_table_decoded_row_code * S ((S (bcf_row_index_lmd_full_digit_choose_choose_table)) * bcf_row_code_scale_lmd_full_digit_choose_choose) + (bcf_row_code_lmd_full_digit_choose_choose_table))) /\ ((((exists bcf_height_lmd_full_digit_choose_choose_table_decoded_row_scale. bcf_height_lmd_full_digit_choose_choose_table_decoded_row_scale + S (bcf_row_scale_lmd_full_digit_choose_choose_table) = S ((S (bcf_row_index_lmd_full_digit_choose_choose_table)) * bcf_row_scale_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_decoded_row_scale. bcf_row_scale_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_table_decoded_row_scale * S ((S (bcf_row_index_lmd_full_digit_choose_choose_table)) * bcf_row_scale_scale_lmd_full_digit_choose_choose) + (bcf_row_scale_lmd_full_digit_choose_choose_table))) /\ ((bcf_row_index_lmd_full_digit_choose_choose_table = 0 /\ (forall bcf_index_lmd_full_digit_choose_choose_table_zero_row. (exists bcf_lt_gap_lmd_full_digit_choose_choose_table_zero_row_bound. bcf_lt_gap_lmd_full_digit_choose_choose_table_zero_row_bound + S (bcf_index_lmd_full_digit_choose_choose_table_zero_row) = S (lmd_choose_upper_full_digit_choose)) -> exists bcf_value_lmd_full_digit_choose_choose_table_zero_row. ((((exists bcf_height_lmd_full_digit_choose_choose_table_zero_row_entry. bcf_height_lmd_full_digit_choose_choose_table_zero_row_entry + S (bcf_value_lmd_full_digit_choose_choose_table_zero_row) = S ((S (bcf_index_lmd_full_digit_choose_choose_table_zero_row)) * bcf_row_scale_lmd_full_digit_choose_choose_table)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_zero_row_entry. bcf_row_code_lmd_full_digit_choose_choose_table = bcf_quotient_lmd_full_digit_choose_choose_table_zero_row_entry * S ((S (bcf_index_lmd_full_digit_choose_choose_table_zero_row)) * bcf_row_scale_lmd_full_digit_choose_choose_table) + (bcf_value_lmd_full_digit_choose_choose_table_zero_row))) /\ ((bcf_index_lmd_full_digit_choose_choose_table_zero_row = 0 /\ bcf_value_lmd_full_digit_choose_choose_table_zero_row = 1) \/ exists bcf_predecessor_lmd_full_digit_choose_choose_table_zero_row. bcf_index_lmd_full_digit_choose_choose_table_zero_row = S bcf_predecessor_lmd_full_digit_choose_choose_table_zero_row /\ bcf_value_lmd_full_digit_choose_choose_table_zero_row = 0)))) \/ exists bcf_predecessor_lmd_full_digit_choose_choose_table bcf_previous_code_lmd_full_digit_choose_choose_table bcf_previous_scale_lmd_full_digit_choose_choose_table. bcf_row_index_lmd_full_digit_choose_choose_table = S bcf_predecessor_lmd_full_digit_choose_choose_table /\ ((((exists bcf_height_lmd_full_digit_choose_choose_table_decoded_previous_code. bcf_height_lmd_full_digit_choose_choose_table_decoded_previous_code + S (bcf_previous_code_lmd_full_digit_choose_choose_table) = S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table)) * bcf_row_code_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_decoded_previous_code. bcf_row_code_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_table_decoded_previous_code * S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table)) * bcf_row_code_scale_lmd_full_digit_choose_choose) + (bcf_previous_code_lmd_full_digit_choose_choose_table))) /\ ((((exists bcf_height_lmd_full_digit_choose_choose_table_decoded_previous_scale. bcf_height_lmd_full_digit_choose_choose_table_decoded_previous_scale + S (bcf_previous_scale_lmd_full_digit_choose_choose_table) = S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table)) * bcf_row_scale_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_decoded_previous_scale. bcf_row_scale_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_table_decoded_previous_scale * S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table)) * bcf_row_scale_scale_lmd_full_digit_choose_choose) + (bcf_previous_scale_lmd_full_digit_choose_choose_table))) /\ (forall bcf_index_lmd_full_digit_choose_choose_table_row_step. (exists bcf_lt_gap_lmd_full_digit_choose_choose_table_row_step_bound. bcf_lt_gap_lmd_full_digit_choose_choose_table_row_step_bound + S (bcf_index_lmd_full_digit_choose_choose_table_row_step) = S (lmd_choose_upper_full_digit_choose)) -> exists bcf_value_lmd_full_digit_choose_choose_table_row_step. ((((exists bcf_height_lmd_full_digit_choose_choose_table_row_step_entry. bcf_height_lmd_full_digit_choose_choose_table_row_step_entry + S (bcf_value_lmd_full_digit_choose_choose_table_row_step) = S ((S (bcf_index_lmd_full_digit_choose_choose_table_row_step)) * bcf_row_scale_lmd_full_digit_choose_choose_table)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_row_step_entry. bcf_row_code_lmd_full_digit_choose_choose_table = bcf_quotient_lmd_full_digit_choose_choose_table_row_step_entry * S ((S (bcf_index_lmd_full_digit_choose_choose_table_row_step)) * bcf_row_scale_lmd_full_digit_choose_choose_table) + (bcf_value_lmd_full_digit_choose_choose_table_row_step))) /\ ((bcf_index_lmd_full_digit_choose_choose_table_row_step = 0 /\ bcf_value_lmd_full_digit_choose_choose_table_row_step = 1) \/ exists bcf_predecessor_lmd_full_digit_choose_choose_table_row_step bcf_left_lmd_full_digit_choose_choose_table_row_step bcf_right_lmd_full_digit_choose_choose_table_row_step. bcf_index_lmd_full_digit_choose_choose_table_row_step = S bcf_predecessor_lmd_full_digit_choose_choose_table_row_step /\ ((((exists bcf_height_lmd_full_digit_choose_choose_table_row_step_previous_left. bcf_height_lmd_full_digit_choose_choose_table_row_step_previous_left + S (bcf_left_lmd_full_digit_choose_choose_table_row_step) = S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table_row_step)) * bcf_previous_scale_lmd_full_digit_choose_choose_table)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_row_step_previous_left. bcf_previous_code_lmd_full_digit_choose_choose_table = bcf_quotient_lmd_full_digit_choose_choose_table_row_step_previous_left * S ((S (bcf_predecessor_lmd_full_digit_choose_choose_table_row_step)) * bcf_previous_scale_lmd_full_digit_choose_choose_table) + (bcf_left_lmd_full_digit_choose_choose_table_row_step))) /\ ((((exists bcf_height_lmd_full_digit_choose_choose_table_row_step_previous_right. bcf_height_lmd_full_digit_choose_choose_table_row_step_previous_right + S (bcf_right_lmd_full_digit_choose_choose_table_row_step) = S ((S (S (bcf_predecessor_lmd_full_digit_choose_choose_table_row_step))) * bcf_previous_scale_lmd_full_digit_choose_choose_table)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_table_row_step_previous_right. bcf_previous_code_lmd_full_digit_choose_choose_table = bcf_quotient_lmd_full_digit_choose_choose_table_row_step_previous_right * S ((S (S (bcf_predecessor_lmd_full_digit_choose_choose_table_row_step))) * bcf_previous_scale_lmd_full_digit_choose_choose_table) + (bcf_right_lmd_full_digit_choose_choose_table_row_step))) /\ bcf_value_lmd_full_digit_choose_choose_table_row_step = bcf_left_lmd_full_digit_choose_choose_table_row_step + bcf_right_lmd_full_digit_choose_choose_table_row_step))))))))))) /\ ((((exists bcf_height_lmd_full_digit_choose_choose_decoded_row_code. bcf_height_lmd_full_digit_choose_choose_decoded_row_code + S (bcf_row_code_lmd_full_digit_choose_choose) = S ((S (lmd_choose_upper_full_digit_choose)) * bcf_row_code_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_decoded_row_code. bcf_row_code_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_decoded_row_code * S ((S (lmd_choose_upper_full_digit_choose)) * bcf_row_code_scale_lmd_full_digit_choose_choose) + (bcf_row_code_lmd_full_digit_choose_choose))) /\ ((((exists bcf_height_lmd_full_digit_choose_choose_decoded_row_scale. bcf_height_lmd_full_digit_choose_choose_decoded_row_scale + S (bcf_row_scale_lmd_full_digit_choose_choose) = S ((S (lmd_choose_upper_full_digit_choose)) * bcf_row_scale_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_decoded_row_scale. bcf_row_scale_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_decoded_row_scale * S ((S (lmd_choose_upper_full_digit_choose)) * bcf_row_scale_scale_lmd_full_digit_choose_choose) + (bcf_row_scale_lmd_full_digit_choose_choose))) /\ (((exists bcf_height_lmd_full_digit_choose_choose_decoded_value. bcf_height_lmd_full_digit_choose_choose_decoded_value + S (lmd_choose_value_full_digit_choose) = S ((S (lmd_choose_lower_full_digit_choose)) * bcf_row_scale_lmd_full_digit_choose_choose)) /\ exists bcf_quotient_lmd_full_digit_choose_choose_decoded_value. bcf_row_code_lmd_full_digit_choose_choose = bcf_quotient_lmd_full_digit_choose_choose_decoded_value * S ((S (lmd_choose_lower_full_digit_choose)) * bcf_row_scale_lmd_full_digit_choose_choose) + (lmd_choose_value_full_digit_choose))))))))))))) -> (exists ff_u_lmd_full_product ff_v_lmd_full_product. ((((exists ff_h_lmd_full_product_start. ff_h_lmd_full_product_start + S (1) = S ((S (0)) * ff_v_lmd_full_product)) /\ exists ff_q_lmd_full_product_start. ff_u_lmd_full_product = ff_q_lmd_full_product_start * S ((S (0)) * ff_v_lmd_full_product) + (1))) /\ ((((exists ff_h_lmd_full_product_terminal. ff_h_lmd_full_product_terminal + S (P) = S ((S (l)) * ff_v_lmd_full_product)) /\ exists ff_q_lmd_full_product_terminal. ff_u_lmd_full_product = ff_q_lmd_full_product_terminal * S ((S (l)) * ff_v_lmd_full_product) + (P))) /\ forall ff_i_lmd_full_product. (exists ff_lt_lmd_full_product_bound. ff_lt_lmd_full_product_bound + S ff_i_lmd_full_product = l) -> exists ff_p_lmd_full_product ff_r_lmd_full_product ff_s_lmd_full_product. ((((exists ff_h_lmd_full_product_factor. ff_h_lmd_full_product_factor + S (ff_p_lmd_full_product) = S ((S (ff_i_lmd_full_product)) * w)) /\ exists ff_q_lmd_full_product_factor. s = ff_q_lmd_full_product_factor * S ((S (ff_i_lmd_full_product)) * w) + (ff_p_lmd_full_product))) /\ ((((exists ff_h_lmd_full_product_partial. ff_h_lmd_full_product_partial + S (ff_r_lmd_full_product) = S ((S (ff_i_lmd_full_product)) * ff_v_lmd_full_product)) /\ exists ff_q_lmd_full_product_partial. ff_u_lmd_full_product = ff_q_lmd_full_product_partial * S ((S (ff_i_lmd_full_product)) * ff_v_lmd_full_product) + (ff_r_lmd_full_product))) /\ ((((exists ff_h_lmd_full_product_successor. ff_h_lmd_full_product_successor + S (ff_s_lmd_full_product) = S ((S (S ff_i_lmd_full_product)) * ff_v_lmd_full_product)) /\ exists ff_q_lmd_full_product_successor. ff_u_lmd_full_product = ff_q_lmd_full_product_successor * S ((S (S ff_i_lmd_full_product)) * ff_v_lmd_full_product) + (ff_s_lmd_full_product))) /\ ff_s_lmd_full_product = ff_r_lmd_full_product * ff_p_lmd_full_product)))))) -> (((exists ff_h_lmd_full_coefficient_start. ff_h_lmd_full_coefficient_start + S (C) = S ((S (0)) * t)) /\ exists ff_q_lmd_full_coefficient_start. z = ff_q_lmd_full_coefficient_start * S ((S (0)) * t) + (C))) -> (((exists ff_h_lmd_full_coefficient_end. ff_h_lmd_full_coefficient_end + S (T) = S ((S (l)) * t)) /\ exists ff_q_lmd_full_coefficient_end. z = ff_q_lmd_full_coefficient_end * S ((S (l)) * t) + (T))) -> (exists lmd_mod_left_full_result lmd_mod_right_full_result. (C) + (p) * lmd_mod_left_full_result = (T * P) + (p) * lmd_mod_right_full_result)
  29. 0029apply lucas_multidigit_congruence_from_one_step
  30. 0030exact lucas_one_step_division_congruence
  31. 0031specialize hglobal p
  32. 0032specialize hglobal n
  33. 0033specialize hglobal k
  34. 0034specialize hglobal l
  35. 0035specialize hglobal qb
  36. 0036specialize hglobal qc
  37. 0037specialize hglobal db
  38. 0038specialize hglobal dc
  39. 0039specialize hglobal ub
  40. 0040specialize hglobal uc
  41. 0041specialize hglobal vb
  42. 0042specialize hglobal vc
  43. 0043specialize hglobal z
  44. 0044specialize hglobal t
  45. 0045specialize hglobal s
  46. 0046specialize hglobal w
  47. 0047specialize hglobal P
  48. 0048specialize hglobal C
  49. 0049specialize hglobal T
  50. 0050apply hglobal
  51. 0051exact hprime
  52. 0052exact hnchain
  53. 0053exact hkchain
  54. 0054exact hquotientchoose
  55. 0055exact hdigitchoose
  56. 0056exact hproduct
  57. 0057exact hstart
  58. 0058exact hterminal