Exact expanded PA statement
forall n m z. n = m -> (exists ff_b_bcflet_source ff_c_bcflet_source. ((forall ff_i_bcflet_source_range. (exists ff_lt_bcflet_source_range_bound. ff_lt_bcflet_source_range_bound + S ff_i_bcflet_source_range = n) -> (((exists ff_h_bcflet_source_range_decoded. ff_h_bcflet_source_range_decoded + S (1 + ff_i_bcflet_source_range) = S ((S (ff_i_bcflet_source_range)) * ff_c_bcflet_source)) /\ exists ff_q_bcflet_source_range_decoded. ff_b_bcflet_source = ff_q_bcflet_source_range_decoded * S ((S (ff_i_bcflet_source_range)) * ff_c_bcflet_source) + (1 + ff_i_bcflet_source_range)))) /\ (exists ff_u_bcflet_source_product ff_v_bcflet_source_product. ((((exists ff_h_bcflet_source_product_start. ff_h_bcflet_source_product_start + S (1) = S ((S (0)) * ff_v_bcflet_source_product)) /\ exists ff_q_bcflet_source_product_start. ff_u_bcflet_source_product = ff_q_bcflet_source_product_start * S ((S (0)) * ff_v_bcflet_source_product) + (1))) /\ ((((exists ff_h_bcflet_source_product_terminal. ff_h_bcflet_source_product_terminal + S (z) = S ((S (n)) * ff_v_bcflet_source_product)) /\ exists ff_q_bcflet_source_product_terminal. ff_u_bcflet_source_product = ff_q_bcflet_source_product_terminal * S ((S (n)) * ff_v_bcflet_source_product) + (z))) /\ forall ff_i_bcflet_source_product. (exists ff_lt_bcflet_source_product_bound. ff_lt_bcflet_source_product_bound + S ff_i_bcflet_source_product = n) -> exists ff_p_bcflet_source_product ff_r_bcflet_source_product ff_s_bcflet_source_product. ((((exists ff_h_bcflet_source_product_factor. ff_h_bcflet_source_product_factor + S (ff_p_bcflet_source_product) = S ((S (ff_i_bcflet_source_product)) * ff_c_bcflet_source)) /\ exists ff_q_bcflet_source_product_factor. ff_b_bcflet_source = ff_q_bcflet_source_product_factor * S ((S (ff_i_bcflet_source_product)) * ff_c_bcflet_source) + (ff_p_bcflet_source_product))) /\ ((((exists ff_h_bcflet_source_product_partial. ff_h_bcflet_source_product_partial + S (ff_r_bcflet_source_product) = S ((S (ff_i_bcflet_source_product)) * ff_v_bcflet_source_product)) /\ exists ff_q_bcflet_source_product_partial. ff_u_bcflet_source_product = ff_q_bcflet_source_product_partial * S ((S (ff_i_bcflet_source_product)) * ff_v_bcflet_source_product) + (ff_r_bcflet_source_product))) /\ ((((exists ff_h_bcflet_source_product_successor. ff_h_bcflet_source_product_successor + S (ff_s_bcflet_source_product) = S ((S (S ff_i_bcflet_source_product)) * ff_v_bcflet_source_product)) /\ exists ff_q_bcflet_source_product_successor. ff_u_bcflet_source_product = ff_q_bcflet_source_product_successor * S ((S (S ff_i_bcflet_source_product)) * ff_v_bcflet_source_product) + (ff_s_bcflet_source_product))) /\ ff_s_bcflet_source_product = ff_r_bcflet_source_product * ff_p_bcflet_source_product)))))))) -> (exists ff_b_bcflet_target ff_c_bcflet_target. ((forall ff_i_bcflet_target_range. (exists ff_lt_bcflet_target_range_bound. ff_lt_bcflet_target_range_bound + S ff_i_bcflet_target_range = m) -> (((exists ff_h_bcflet_target_range_decoded. ff_h_bcflet_target_range_decoded + S (1 + ff_i_bcflet_target_range) = S ((S (ff_i_bcflet_target_range)) * ff_c_bcflet_target)) /\ exists ff_q_bcflet_target_range_decoded. ff_b_bcflet_target = ff_q_bcflet_target_range_decoded * S ((S (ff_i_bcflet_target_range)) * ff_c_bcflet_target) + (1 + ff_i_bcflet_target_range)))) /\ (exists ff_u_bcflet_target_product ff_v_bcflet_target_product. ((((exists ff_h_bcflet_target_product_start. ff_h_bcflet_target_product_start + S (1) = S ((S (0)) * ff_v_bcflet_target_product)) /\ exists ff_q_bcflet_target_product_start. ff_u_bcflet_target_product = ff_q_bcflet_target_product_start * S ((S (0)) * ff_v_bcflet_target_product) + (1))) /\ ((((exists ff_h_bcflet_target_product_terminal. ff_h_bcflet_target_product_terminal + S (z) = S ((S (m)) * ff_v_bcflet_target_product)) /\ exists ff_q_bcflet_target_product_terminal. ff_u_bcflet_target_product = ff_q_bcflet_target_product_terminal * S ((S (m)) * ff_v_bcflet_target_product) + (z))) /\ forall ff_i_bcflet_target_product. (exists ff_lt_bcflet_target_product_bound. ff_lt_bcflet_target_product_bound + S ff_i_bcflet_target_product = m) -> exists ff_p_bcflet_target_product ff_r_bcflet_target_product ff_s_bcflet_target_product. ((((exists ff_h_bcflet_target_product_factor. ff_h_bcflet_target_product_factor + S (ff_p_bcflet_target_product) = S ((S (ff_i_bcflet_target_product)) * ff_c_bcflet_target)) /\ exists ff_q_bcflet_target_product_factor. ff_b_bcflet_target = ff_q_bcflet_target_product_factor * S ((S (ff_i_bcflet_target_product)) * ff_c_bcflet_target) + (ff_p_bcflet_target_product))) /\ ((((exists ff_h_bcflet_target_product_partial. ff_h_bcflet_target_product_partial + S (ff_r_bcflet_target_product) = S ((S (ff_i_bcflet_target_product)) * ff_v_bcflet_target_product)) /\ exists ff_q_bcflet_target_product_partial. ff_u_bcflet_target_product = ff_q_bcflet_target_product_partial * S ((S (ff_i_bcflet_target_product)) * ff_v_bcflet_target_product) + (ff_r_bcflet_target_product))) /\ ((((exists ff_h_bcflet_target_product_successor. ff_h_bcflet_target_product_successor + S (ff_s_bcflet_target_product) = S ((S (S ff_i_bcflet_target_product)) * ff_v_bcflet_target_product)) /\ exists ff_q_bcflet_target_product_successor. ff_u_bcflet_target_product = ff_q_bcflet_target_product_successor * S ((S (S ff_i_bcflet_target_product)) * ff_v_bcflet_target_product) + (ff_s_bcflet_target_product))) /\ ff_s_bcflet_target_product = ff_r_bcflet_target_product * ff_p_bcflet_target_product))))))))Structural proof guide
Relational factorial transports along equality of its length.
Direct prerequisites: none. The authored body proceeds by equality transport (4).
Proof neighborhood
Direct dependencies
none
Direct dependents
Formal native tactic body
Dependencies are hypotheses of this body receipt. The focused endpoint audits separately check the complete empty-context certificates.