Exact expanded first-order arithmetic statement
forall m n k A B C D u E F G H v. ~(m=0) -> ~(n=0) -> (forall jt_divisor_mulenumcop. (exists jt_factor_mulenumcopa. (m)=(jt_divisor_mulenumcop)*jt_factor_mulenumcopa) -> (exists jt_factor_mulenumcopb. (n)=(jt_divisor_mulenumcop)*jt_factor_mulenumcopb) -> jt_divisor_mulenumcop=1) -> (((forall jt_i_mulenumleft. (exists jt_gap_mulenumleftsoundindex. jt_gap_mulenumleftsoundindex+S (jt_i_mulenumleft)=(u)) -> exists jt_b_mulenumleft jt_c_mulenumleft. ((((((exists fs_h_jt_mulenumleftsoundcode. fs_h_jt_mulenumleftsoundcode + S (jt_b_mulenumleft) = S ((S (jt_i_mulenumleft)) * B)) /\ exists fs_q_jt_mulenumleftsoundcode. A = fs_q_jt_mulenumleftsoundcode * S ((S (jt_i_mulenumleft)) * B) + (jt_b_mulenumleft))) /\ (((exists fs_h_jt_mulenumleftsoundscale. fs_h_jt_mulenumleftsoundscale + S (jt_c_mulenumleft) = S ((S (jt_i_mulenumleft)) * D)) /\ exists fs_q_jt_mulenumleftsoundscale. C = fs_q_jt_mulenumleftsoundscale * S ((S (jt_i_mulenumleft)) * D) + (jt_c_mulenumleft))))) /\ (((forall jt_index_mulenumleftbound. (exists jt_gap_mulenumleftboundindex. jt_gap_mulenumleftboundindex+S (jt_index_mulenumleftbound)=(k)) -> exists jt_value_mulenumleftbound. ((((exists fs_h_jt_mulenumleftboundat. fs_h_jt_mulenumleftboundat + S (jt_value_mulenumleftbound) = S ((S (jt_index_mulenumleftbound)) * jt_c_mulenumleft)) /\ exists fs_q_jt_mulenumleftboundat. jt_b_mulenumleft = fs_q_jt_mulenumleftboundat * S ((S (jt_index_mulenumleftbound)) * jt_c_mulenumleft) + (jt_value_mulenumleftbound))) /\ (exists jt_gap_mulenumleftboundvalue. jt_gap_mulenumleftboundvalue+S (jt_value_mulenumleftbound)=(m)))) /\ (forall jt_divisor_mulenumleftprimitive. (exists jt_factor_mulenumleftprimitivemodulus. (m)=(jt_divisor_mulenumleftprimitive)*jt_factor_mulenumleftprimitivemodulus) -> (forall jt_index_mulenumleftprimitivecoordinates jt_value_mulenumleftprimitivecoordinates. (exists jt_gap_mulenumleftprimitivecoordinatesindex. jt_gap_mulenumleftprimitivecoordinatesindex+S (jt_index_mulenumleftprimitivecoordinates)=(k)) -> (((exists fs_h_jt_mulenumleftprimitivecoordinatesat. fs_h_jt_mulenumleftprimitivecoordinatesat + S (jt_value_mulenumleftprimitivecoordinates) = S ((S (jt_index_mulenumleftprimitivecoordinates)) * jt_c_mulenumleft)) /\ exists fs_q_jt_mulenumleftprimitivecoordinatesat. jt_b_mulenumleft = fs_q_jt_mulenumleftprimitivecoordinatesat * S ((S (jt_index_mulenumleftprimitivecoordinates)) * jt_c_mulenumleft) + (jt_value_mulenumleftprimitivecoordinates))) -> (exists jt_factor_mulenumleftprimitivecoordinatesdivides. (jt_value_mulenumleftprimitivecoordinates)=(jt_divisor_mulenumleftprimitive)*jt_factor_mulenumleftprimitivecoordinatesdivides)) -> jt_divisor_mulenumleftprimitive=1))))) /\ (((forall jt_b_mulenumleft jt_c_mulenumleft. (forall jt_index_mulenumleftinputbound. (exists jt_gap_mulenumleftinputboundindex. jt_gap_mulenumleftinputboundindex+S (jt_index_mulenumleftinputbound)=(k)) -> exists jt_value_mulenumleftinputbound. ((((exists fs_h_jt_mulenumleftinputboundat. fs_h_jt_mulenumleftinputboundat + S (jt_value_mulenumleftinputbound) = S ((S (jt_index_mulenumleftinputbound)) * jt_c_mulenumleft)) /\ exists fs_q_jt_mulenumleftinputboundat. jt_b_mulenumleft = fs_q_jt_mulenumleftinputboundat * S ((S (jt_index_mulenumleftinputbound)) * jt_c_mulenumleft) + (jt_value_mulenumleftinputbound))) /\ (exists jt_gap_mulenumleftinputboundvalue. jt_gap_mulenumleftinputboundvalue+S (jt_value_mulenumleftinputbound)=(m)))) -> (forall jt_divisor_mulenumleftinputprimitive. (exists jt_factor_mulenumleftinputprimitivemodulus. (m)=(jt_divisor_mulenumleftinputprimitive)*jt_factor_mulenumleftinputprimitivemodulus) -> (forall jt_index_mulenumleftinputprimitivecoordinates jt_value_mulenumleftinputprimitivecoordinates. (exists jt_gap_mulenumleftinputprimitivecoordinatesindex. jt_gap_mulenumleftinputprimitivecoordinatesindex+S (jt_index_mulenumleftinputprimitivecoordinates)=(k)) -> (((exists fs_h_jt_mulenumleftinputprimitivecoordinatesat. fs_h_jt_mulenumleftinputprimitivecoordinatesat + S (jt_value_mulenumleftinputprimitivecoordinates) = S ((S (jt_index_mulenumleftinputprimitivecoordinates)) * jt_c_mulenumleft)) /\ exists fs_q_jt_mulenumleftinputprimitivecoordinatesat. jt_b_mulenumleft = fs_q_jt_mulenumleftinputprimitivecoordinatesat * S ((S (jt_index_mulenumleftinputprimitivecoordinates)) * jt_c_mulenumleft) + (jt_value_mulenumleftinputprimitivecoordinates))) -> (exists jt_factor_mulenumleftinputprimitivecoordinatesdivides. (jt_value_mulenumleftinputprimitivecoordinates)=(jt_divisor_mulenumleftinputprimitive)*jt_factor_mulenumleftinputprimitivecoordinatesdivides)) -> jt_divisor_mulenumleftinputprimitive=1) -> exists jt_i_mulenumleft jt_d_mulenumleft jt_e_mulenumleft. ((exists jt_gap_mulenumleftcompleteindex. jt_gap_mulenumleftcompleteindex+S (jt_i_mulenumleft)=(u)) /\ (((((((exists fs_h_jt_mulenumleftcompletecode. fs_h_jt_mulenumleftcompletecode + S (jt_d_mulenumleft) = S ((S (jt_i_mulenumleft)) * B)) /\ exists fs_q_jt_mulenumleftcompletecode. A = fs_q_jt_mulenumleftcompletecode * S ((S (jt_i_mulenumleft)) * B) + (jt_d_mulenumleft))) /\ (((exists fs_h_jt_mulenumleftcompletescale. fs_h_jt_mulenumleftcompletescale + S (jt_e_mulenumleft) = S ((S (jt_i_mulenumleft)) * D)) /\ exists fs_q_jt_mulenumleftcompletescale. C = fs_q_jt_mulenumleftcompletescale * S ((S (jt_i_mulenumleft)) * D) + (jt_e_mulenumleft))))) /\ (forall jt_index_mulenumleftrepresented jt_left_mulenumleftrepresented jt_right_mulenumleftrepresented. (exists jt_gap_mulenumleftrepresentedindex. jt_gap_mulenumleftrepresentedindex+S (jt_index_mulenumleftrepresented)=(k)) -> (((exists fs_h_jt_mulenumleftrepresentedleft. fs_h_jt_mulenumleftrepresentedleft + S (jt_left_mulenumleftrepresented) = S ((S (jt_index_mulenumleftrepresented)) * jt_c_mulenumleft)) /\ exists fs_q_jt_mulenumleftrepresentedleft. jt_b_mulenumleft = fs_q_jt_mulenumleftrepresentedleft * S ((S (jt_index_mulenumleftrepresented)) * jt_c_mulenumleft) + (jt_left_mulenumleftrepresented))) -> (((exists fs_h_jt_mulenumleftrepresentedright. fs_h_jt_mulenumleftrepresentedright + S (jt_right_mulenumleftrepresented) = S ((S (jt_index_mulenumleftrepresented)) * jt_e_mulenumleft)) /\ exists fs_q_jt_mulenumleftrepresentedright. jt_d_mulenumleft = fs_q_jt_mulenumleftrepresentedright * S ((S (jt_index_mulenumleftrepresented)) * jt_e_mulenumleft) + (jt_right_mulenumleftrepresented))) -> jt_left_mulenumleftrepresented=jt_right_mulenumleftrepresented))))) /\ (forall jt_i_mulenumleft jt_h_mulenumleft jt_b_mulenumleft jt_c_mulenumleft jt_d_mulenumleft jt_e_mulenumleft. (exists jt_gap_mulenumleftfirstindex. jt_gap_mulenumleftfirstindex+S (jt_i_mulenumleft)=(u)) -> (exists jt_gap_mulenumleftsecondindex. jt_gap_mulenumleftsecondindex+S (jt_h_mulenumleft)=(u)) -> (((((exists fs_h_jt_mulenumleftfirstcode. fs_h_jt_mulenumleftfirstcode + S (jt_b_mulenumleft) = S ((S (jt_i_mulenumleft)) * B)) /\ exists fs_q_jt_mulenumleftfirstcode. A = fs_q_jt_mulenumleftfirstcode * S ((S (jt_i_mulenumleft)) * B) + (jt_b_mulenumleft))) /\ (((exists fs_h_jt_mulenumleftfirstscale. fs_h_jt_mulenumleftfirstscale + S (jt_c_mulenumleft) = S ((S (jt_i_mulenumleft)) * D)) /\ exists fs_q_jt_mulenumleftfirstscale. C = fs_q_jt_mulenumleftfirstscale * S ((S (jt_i_mulenumleft)) * D) + (jt_c_mulenumleft))))) -> (((((exists fs_h_jt_mulenumleftsecondcode. fs_h_jt_mulenumleftsecondcode + S (jt_d_mulenumleft) = S ((S (jt_h_mulenumleft)) * B)) /\ exists fs_q_jt_mulenumleftsecondcode. A = fs_q_jt_mulenumleftsecondcode * S ((S (jt_h_mulenumleft)) * B) + (jt_d_mulenumleft))) /\ (((exists fs_h_jt_mulenumleftsecondscale. fs_h_jt_mulenumleftsecondscale + S (jt_e_mulenumleft) = S ((S (jt_h_mulenumleft)) * D)) /\ exists fs_q_jt_mulenumleftsecondscale. C = fs_q_jt_mulenumleftsecondscale * S ((S (jt_h_mulenumleft)) * D) + (jt_e_mulenumleft))))) -> (forall jt_index_mulenumleftsame jt_left_mulenumleftsame jt_right_mulenumleftsame. (exists jt_gap_mulenumleftsameindex. jt_gap_mulenumleftsameindex+S (jt_index_mulenumleftsame)=(k)) -> (((exists fs_h_jt_mulenumleftsameleft. fs_h_jt_mulenumleftsameleft + S (jt_left_mulenumleftsame) = S ((S (jt_index_mulenumleftsame)) * jt_c_mulenumleft)) /\ exists fs_q_jt_mulenumleftsameleft. jt_b_mulenumleft = fs_q_jt_mulenumleftsameleft * S ((S (jt_index_mulenumleftsame)) * jt_c_mulenumleft) + (jt_left_mulenumleftsame))) -> (((exists fs_h_jt_mulenumleftsameright. fs_h_jt_mulenumleftsameright + S (jt_right_mulenumleftsame) = S ((S (jt_index_mulenumleftsame)) * jt_e_mulenumleft)) /\ exists fs_q_jt_mulenumleftsameright. jt_d_mulenumleft = fs_q_jt_mulenumleftsameright * S ((S (jt_index_mulenumleftsame)) * jt_e_mulenumleft) + (jt_right_mulenumleftsame))) -> jt_left_mulenumleftsame=jt_right_mulenumleftsame) -> jt_i_mulenumleft=jt_h_mulenumleft))))) -> (((forall jt_i_mulenumright. (exists jt_gap_mulenumrightsoundindex. jt_gap_mulenumrightsoundindex+S (jt_i_mulenumright)=(v)) -> exists jt_b_mulenumright jt_c_mulenumright. ((((((exists fs_h_jt_mulenumrightsoundcode. fs_h_jt_mulenumrightsoundcode + S (jt_b_mulenumright) = S ((S (jt_i_mulenumright)) * F)) /\ exists fs_q_jt_mulenumrightsoundcode. E = fs_q_jt_mulenumrightsoundcode * S ((S (jt_i_mulenumright)) * F) + (jt_b_mulenumright))) /\ (((exists fs_h_jt_mulenumrightsoundscale. fs_h_jt_mulenumrightsoundscale + S (jt_c_mulenumright) = S ((S (jt_i_mulenumright)) * H)) /\ exists fs_q_jt_mulenumrightsoundscale. G = fs_q_jt_mulenumrightsoundscale * S ((S (jt_i_mulenumright)) * H) + (jt_c_mulenumright))))) /\ (((forall jt_index_mulenumrightbound. (exists jt_gap_mulenumrightboundindex. jt_gap_mulenumrightboundindex+S (jt_index_mulenumrightbound)=(k)) -> exists jt_value_mulenumrightbound. ((((exists fs_h_jt_mulenumrightboundat. fs_h_jt_mulenumrightboundat + S (jt_value_mulenumrightbound) = S ((S (jt_index_mulenumrightbound)) * jt_c_mulenumright)) /\ exists fs_q_jt_mulenumrightboundat. jt_b_mulenumright = fs_q_jt_mulenumrightboundat * S ((S (jt_index_mulenumrightbound)) * jt_c_mulenumright) + (jt_value_mulenumrightbound))) /\ (exists jt_gap_mulenumrightboundvalue. jt_gap_mulenumrightboundvalue+S (jt_value_mulenumrightbound)=(n)))) /\ (forall jt_divisor_mulenumrightprimitive. (exists jt_factor_mulenumrightprimitivemodulus. (n)=(jt_divisor_mulenumrightprimitive)*jt_factor_mulenumrightprimitivemodulus) -> (forall jt_index_mulenumrightprimitivecoordinates jt_value_mulenumrightprimitivecoordinates. (exists jt_gap_mulenumrightprimitivecoordinatesindex. jt_gap_mulenumrightprimitivecoordinatesindex+S (jt_index_mulenumrightprimitivecoordinates)=(k)) -> (((exists fs_h_jt_mulenumrightprimitivecoordinatesat. fs_h_jt_mulenumrightprimitivecoordinatesat + S (jt_value_mulenumrightprimitivecoordinates) = S ((S (jt_index_mulenumrightprimitivecoordinates)) * jt_c_mulenumright)) /\ exists fs_q_jt_mulenumrightprimitivecoordinatesat. jt_b_mulenumright = fs_q_jt_mulenumrightprimitivecoordinatesat * S ((S (jt_index_mulenumrightprimitivecoordinates)) * jt_c_mulenumright) + (jt_value_mulenumrightprimitivecoordinates))) -> (exists jt_factor_mulenumrightprimitivecoordinatesdivides. (jt_value_mulenumrightprimitivecoordinates)=(jt_divisor_mulenumrightprimitive)*jt_factor_mulenumrightprimitivecoordinatesdivides)) -> jt_divisor_mulenumrightprimitive=1))))) /\ (((forall jt_b_mulenumright jt_c_mulenumright. (forall jt_index_mulenumrightinputbound. (exists jt_gap_mulenumrightinputboundindex. jt_gap_mulenumrightinputboundindex+S (jt_index_mulenumrightinputbound)=(k)) -> exists jt_value_mulenumrightinputbound. ((((exists fs_h_jt_mulenumrightinputboundat. fs_h_jt_mulenumrightinputboundat + S (jt_value_mulenumrightinputbound) = S ((S (jt_index_mulenumrightinputbound)) * jt_c_mulenumright)) /\ exists fs_q_jt_mulenumrightinputboundat. jt_b_mulenumright = fs_q_jt_mulenumrightinputboundat * S ((S (jt_index_mulenumrightinputbound)) * jt_c_mulenumright) + (jt_value_mulenumrightinputbound))) /\ (exists jt_gap_mulenumrightinputboundvalue. jt_gap_mulenumrightinputboundvalue+S (jt_value_mulenumrightinputbound)=(n)))) -> (forall jt_divisor_mulenumrightinputprimitive. (exists jt_factor_mulenumrightinputprimitivemodulus. (n)=(jt_divisor_mulenumrightinputprimitive)*jt_factor_mulenumrightinputprimitivemodulus) -> (forall jt_index_mulenumrightinputprimitivecoordinates jt_value_mulenumrightinputprimitivecoordinates. (exists jt_gap_mulenumrightinputprimitivecoordinatesindex. jt_gap_mulenumrightinputprimitivecoordinatesindex+S (jt_index_mulenumrightinputprimitivecoordinates)=(k)) -> (((exists fs_h_jt_mulenumrightinputprimitivecoordinatesat. fs_h_jt_mulenumrightinputprimitivecoordinatesat + S (jt_value_mulenumrightinputprimitivecoordinates) = S ((S (jt_index_mulenumrightinputprimitivecoordinates)) * jt_c_mulenumright)) /\ exists fs_q_jt_mulenumrightinputprimitivecoordinatesat. jt_b_mulenumright = fs_q_jt_mulenumrightinputprimitivecoordinatesat * S ((S (jt_index_mulenumrightinputprimitivecoordinates)) * jt_c_mulenumright) + (jt_value_mulenumrightinputprimitivecoordinates))) -> (exists jt_factor_mulenumrightinputprimitivecoordinatesdivides. (jt_value_mulenumrightinputprimitivecoordinates)=(jt_divisor_mulenumrightinputprimitive)*jt_factor_mulenumrightinputprimitivecoordinatesdivides)) -> jt_divisor_mulenumrightinputprimitive=1) -> exists jt_i_mulenumright jt_d_mulenumright jt_e_mulenumright. ((exists jt_gap_mulenumrightcompleteindex. jt_gap_mulenumrightcompleteindex+S (jt_i_mulenumright)=(v)) /\ (((((((exists fs_h_jt_mulenumrightcompletecode. fs_h_jt_mulenumrightcompletecode + S (jt_d_mulenumright) = S ((S (jt_i_mulenumright)) * F)) /\ exists fs_q_jt_mulenumrightcompletecode. E = fs_q_jt_mulenumrightcompletecode * S ((S (jt_i_mulenumright)) * F) + (jt_d_mulenumright))) /\ (((exists fs_h_jt_mulenumrightcompletescale. fs_h_jt_mulenumrightcompletescale + S (jt_e_mulenumright) = S ((S (jt_i_mulenumright)) * H)) /\ exists fs_q_jt_mulenumrightcompletescale. G = fs_q_jt_mulenumrightcompletescale * S ((S (jt_i_mulenumright)) * H) + (jt_e_mulenumright))))) /\ (forall jt_index_mulenumrightrepresented jt_left_mulenumrightrepresented jt_right_mulenumrightrepresented. (exists jt_gap_mulenumrightrepresentedindex. jt_gap_mulenumrightrepresentedindex+S (jt_index_mulenumrightrepresented)=(k)) -> (((exists fs_h_jt_mulenumrightrepresentedleft. fs_h_jt_mulenumrightrepresentedleft + S (jt_left_mulenumrightrepresented) = S ((S (jt_index_mulenumrightrepresented)) * jt_c_mulenumright)) /\ exists fs_q_jt_mulenumrightrepresentedleft. jt_b_mulenumright = fs_q_jt_mulenumrightrepresentedleft * S ((S (jt_index_mulenumrightrepresented)) * jt_c_mulenumright) + (jt_left_mulenumrightrepresented))) -> (((exists fs_h_jt_mulenumrightrepresentedright. fs_h_jt_mulenumrightrepresentedright + S (jt_right_mulenumrightrepresented) = S ((S (jt_index_mulenumrightrepresented)) * jt_e_mulenumright)) /\ exists fs_q_jt_mulenumrightrepresentedright. jt_d_mulenumright = fs_q_jt_mulenumrightrepresentedright * S ((S (jt_index_mulenumrightrepresented)) * jt_e_mulenumright) + (jt_right_mulenumrightrepresented))) -> jt_left_mulenumrightrepresented=jt_right_mulenumrightrepresented))))) /\ (forall jt_i_mulenumright jt_h_mulenumright jt_b_mulenumright jt_c_mulenumright jt_d_mulenumright jt_e_mulenumright. (exists jt_gap_mulenumrightfirstindex. jt_gap_mulenumrightfirstindex+S (jt_i_mulenumright)=(v)) -> (exists jt_gap_mulenumrightsecondindex. jt_gap_mulenumrightsecondindex+S (jt_h_mulenumright)=(v)) -> (((((exists fs_h_jt_mulenumrightfirstcode. fs_h_jt_mulenumrightfirstcode + S (jt_b_mulenumright) = S ((S (jt_i_mulenumright)) * F)) /\ exists fs_q_jt_mulenumrightfirstcode. E = fs_q_jt_mulenumrightfirstcode * S ((S (jt_i_mulenumright)) * F) + (jt_b_mulenumright))) /\ (((exists fs_h_jt_mulenumrightfirstscale. fs_h_jt_mulenumrightfirstscale + S (jt_c_mulenumright) = S ((S (jt_i_mulenumright)) * H)) /\ exists fs_q_jt_mulenumrightfirstscale. G = fs_q_jt_mulenumrightfirstscale * S ((S (jt_i_mulenumright)) * H) + (jt_c_mulenumright))))) -> (((((exists fs_h_jt_mulenumrightsecondcode. fs_h_jt_mulenumrightsecondcode + S (jt_d_mulenumright) = S ((S (jt_h_mulenumright)) * F)) /\ exists fs_q_jt_mulenumrightsecondcode. E = fs_q_jt_mulenumrightsecondcode * S ((S (jt_h_mulenumright)) * F) + (jt_d_mulenumright))) /\ (((exists fs_h_jt_mulenumrightsecondscale. fs_h_jt_mulenumrightsecondscale + S (jt_e_mulenumright) = S ((S (jt_h_mulenumright)) * H)) /\ exists fs_q_jt_mulenumrightsecondscale. G = fs_q_jt_mulenumrightsecondscale * S ((S (jt_h_mulenumright)) * H) + (jt_e_mulenumright))))) -> (forall jt_index_mulenumrightsame jt_left_mulenumrightsame jt_right_mulenumrightsame. (exists jt_gap_mulenumrightsameindex. jt_gap_mulenumrightsameindex+S (jt_index_mulenumrightsame)=(k)) -> (((exists fs_h_jt_mulenumrightsameleft. fs_h_jt_mulenumrightsameleft + S (jt_left_mulenumrightsame) = S ((S (jt_index_mulenumrightsame)) * jt_c_mulenumright)) /\ exists fs_q_jt_mulenumrightsameleft. jt_b_mulenumright = fs_q_jt_mulenumrightsameleft * S ((S (jt_index_mulenumrightsame)) * jt_c_mulenumright) + (jt_left_mulenumrightsame))) -> (((exists fs_h_jt_mulenumrightsameright. fs_h_jt_mulenumrightsameright + S (jt_right_mulenumrightsame) = S ((S (jt_index_mulenumrightsame)) * jt_e_mulenumright)) /\ exists fs_q_jt_mulenumrightsameright. jt_d_mulenumright = fs_q_jt_mulenumrightsameright * S ((S (jt_index_mulenumrightsame)) * jt_e_mulenumright) + (jt_right_mulenumrightsame))) -> jt_left_mulenumrightsame=jt_right_mulenumrightsame) -> jt_i_mulenumright=jt_h_mulenumright))))) -> exists P Q R T. ((forall jt_i_mulenumoutput. (exists jt_gap_mulenumoutputsoundindex. jt_gap_mulenumoutputsoundindex+S (jt_i_mulenumoutput)=(u*v)) -> exists jt_b_mulenumoutput jt_c_mulenumoutput. ((((((exists fs_h_jt_mulenumoutputsoundcode. fs_h_jt_mulenumoutputsoundcode + S (jt_b_mulenumoutput) = S ((S (jt_i_mulenumoutput)) * Q)) /\ exists fs_q_jt_mulenumoutputsoundcode. P = fs_q_jt_mulenumoutputsoundcode * S ((S (jt_i_mulenumoutput)) * Q) + (jt_b_mulenumoutput))) /\ (((exists fs_h_jt_mulenumoutputsoundscale. fs_h_jt_mulenumoutputsoundscale + S (jt_c_mulenumoutput) = S ((S (jt_i_mulenumoutput)) * T)) /\ exists fs_q_jt_mulenumoutputsoundscale. R = fs_q_jt_mulenumoutputsoundscale * S ((S (jt_i_mulenumoutput)) * T) + (jt_c_mulenumoutput))))) /\ (((forall jt_index_mulenumoutputbound. (exists jt_gap_mulenumoutputboundindex. jt_gap_mulenumoutputboundindex+S (jt_index_mulenumoutputbound)=(k)) -> exists jt_value_mulenumoutputbound. ((((exists fs_h_jt_mulenumoutputboundat. fs_h_jt_mulenumoutputboundat + S (jt_value_mulenumoutputbound) = S ((S (jt_index_mulenumoutputbound)) * jt_c_mulenumoutput)) /\ exists fs_q_jt_mulenumoutputboundat. jt_b_mulenumoutput = fs_q_jt_mulenumoutputboundat * S ((S (jt_index_mulenumoutputbound)) * jt_c_mulenumoutput) + (jt_value_mulenumoutputbound))) /\ (exists jt_gap_mulenumoutputboundvalue. jt_gap_mulenumoutputboundvalue+S (jt_value_mulenumoutputbound)=(m*n)))) /\ (forall jt_divisor_mulenumoutputprimitive. (exists jt_factor_mulenumoutputprimitivemodulus. (m*n)=(jt_divisor_mulenumoutputprimitive)*jt_factor_mulenumoutputprimitivemodulus) -> (forall jt_index_mulenumoutputprimitivecoordinates jt_value_mulenumoutputprimitivecoordinates. (exists jt_gap_mulenumoutputprimitivecoordinatesindex. jt_gap_mulenumoutputprimitivecoordinatesindex+S (jt_index_mulenumoutputprimitivecoordinates)=(k)) -> (((exists fs_h_jt_mulenumoutputprimitivecoordinatesat. fs_h_jt_mulenumoutputprimitivecoordinatesat + S (jt_value_mulenumoutputprimitivecoordinates) = S ((S (jt_index_mulenumoutputprimitivecoordinates)) * jt_c_mulenumoutput)) /\ exists fs_q_jt_mulenumoutputprimitivecoordinatesat. jt_b_mulenumoutput = fs_q_jt_mulenumoutputprimitivecoordinatesat * S ((S (jt_index_mulenumoutputprimitivecoordinates)) * jt_c_mulenumoutput) + (jt_value_mulenumoutputprimitivecoordinates))) -> (exists jt_factor_mulenumoutputprimitivecoordinatesdivides. (jt_value_mulenumoutputprimitivecoordinates)=(jt_divisor_mulenumoutputprimitive)*jt_factor_mulenumoutputprimitivecoordinatesdivides)) -> jt_divisor_mulenumoutputprimitive=1))))) /\ (((forall jt_b_mulenumoutput jt_c_mulenumoutput. (forall jt_index_mulenumoutputinputbound. (exists jt_gap_mulenumoutputinputboundindex. jt_gap_mulenumoutputinputboundindex+S (jt_index_mulenumoutputinputbound)=(k)) -> exists jt_value_mulenumoutputinputbound. ((((exists fs_h_jt_mulenumoutputinputboundat. fs_h_jt_mulenumoutputinputboundat + S (jt_value_mulenumoutputinputbound) = S ((S (jt_index_mulenumoutputinputbound)) * jt_c_mulenumoutput)) /\ exists fs_q_jt_mulenumoutputinputboundat. jt_b_mulenumoutput = fs_q_jt_mulenumoutputinputboundat * S ((S (jt_index_mulenumoutputinputbound)) * jt_c_mulenumoutput) + (jt_value_mulenumoutputinputbound))) /\ (exists jt_gap_mulenumoutputinputboundvalue. jt_gap_mulenumoutputinputboundvalue+S (jt_value_mulenumoutputinputbound)=(m*n)))) -> (forall jt_divisor_mulenumoutputinputprimitive. (exists jt_factor_mulenumoutputinputprimitivemodulus. (m*n)=(jt_divisor_mulenumoutputinputprimitive)*jt_factor_mulenumoutputinputprimitivemodulus) -> (forall jt_index_mulenumoutputinputprimitivecoordinates jt_value_mulenumoutputinputprimitivecoordinates. (exists jt_gap_mulenumoutputinputprimitivecoordinatesindex. jt_gap_mulenumoutputinputprimitivecoordinatesindex+S (jt_index_mulenumoutputinputprimitivecoordinates)=(k)) -> (((exists fs_h_jt_mulenumoutputinputprimitivecoordinatesat. fs_h_jt_mulenumoutputinputprimitivecoordinatesat + S (jt_value_mulenumoutputinputprimitivecoordinates) = S ((S (jt_index_mulenumoutputinputprimitivecoordinates)) * jt_c_mulenumoutput)) /\ exists fs_q_jt_mulenumoutputinputprimitivecoordinatesat. jt_b_mulenumoutput = fs_q_jt_mulenumoutputinputprimitivecoordinatesat * S ((S (jt_index_mulenumoutputinputprimitivecoordinates)) * jt_c_mulenumoutput) + (jt_value_mulenumoutputinputprimitivecoordinates))) -> (exists jt_factor_mulenumoutputinputprimitivecoordinatesdivides. (jt_value_mulenumoutputinputprimitivecoordinates)=(jt_divisor_mulenumoutputinputprimitive)*jt_factor_mulenumoutputinputprimitivecoordinatesdivides)) -> jt_divisor_mulenumoutputinputprimitive=1) -> exists jt_i_mulenumoutput jt_d_mulenumoutput jt_e_mulenumoutput. ((exists jt_gap_mulenumoutputcompleteindex. jt_gap_mulenumoutputcompleteindex+S (jt_i_mulenumoutput)=(u*v)) /\ (((((((exists fs_h_jt_mulenumoutputcompletecode. fs_h_jt_mulenumoutputcompletecode + S (jt_d_mulenumoutput) = S ((S (jt_i_mulenumoutput)) * Q)) /\ exists fs_q_jt_mulenumoutputcompletecode. P = fs_q_jt_mulenumoutputcompletecode * S ((S (jt_i_mulenumoutput)) * Q) + (jt_d_mulenumoutput))) /\ (((exists fs_h_jt_mulenumoutputcompletescale. fs_h_jt_mulenumoutputcompletescale + S (jt_e_mulenumoutput) = S ((S (jt_i_mulenumoutput)) * T)) /\ exists fs_q_jt_mulenumoutputcompletescale. R = fs_q_jt_mulenumoutputcompletescale * S ((S (jt_i_mulenumoutput)) * T) + (jt_e_mulenumoutput))))) /\ (forall jt_index_mulenumoutputrepresented jt_left_mulenumoutputrepresented jt_right_mulenumoutputrepresented. (exists jt_gap_mulenumoutputrepresentedindex. jt_gap_mulenumoutputrepresentedindex+S (jt_index_mulenumoutputrepresented)=(k)) -> (((exists fs_h_jt_mulenumoutputrepresentedleft. fs_h_jt_mulenumoutputrepresentedleft + S (jt_left_mulenumoutputrepresented) = S ((S (jt_index_mulenumoutputrepresented)) * jt_c_mulenumoutput)) /\ exists fs_q_jt_mulenumoutputrepresentedleft. jt_b_mulenumoutput = fs_q_jt_mulenumoutputrepresentedleft * S ((S (jt_index_mulenumoutputrepresented)) * jt_c_mulenumoutput) + (jt_left_mulenumoutputrepresented))) -> (((exists fs_h_jt_mulenumoutputrepresentedright. fs_h_jt_mulenumoutputrepresentedright + S (jt_right_mulenumoutputrepresented) = S ((S (jt_index_mulenumoutputrepresented)) * jt_e_mulenumoutput)) /\ exists fs_q_jt_mulenumoutputrepresentedright. jt_d_mulenumoutput = fs_q_jt_mulenumoutputrepresentedright * S ((S (jt_index_mulenumoutputrepresented)) * jt_e_mulenumoutput) + (jt_right_mulenumoutputrepresented))) -> jt_left_mulenumoutputrepresented=jt_right_mulenumoutputrepresented))))) /\ (forall jt_i_mulenumoutput jt_h_mulenumoutput jt_b_mulenumoutput jt_c_mulenumoutput jt_d_mulenumoutput jt_e_mulenumoutput. (exists jt_gap_mulenumoutputfirstindex. jt_gap_mulenumoutputfirstindex+S (jt_i_mulenumoutput)=(u*v)) -> (exists jt_gap_mulenumoutputsecondindex. jt_gap_mulenumoutputsecondindex+S (jt_h_mulenumoutput)=(u*v)) -> (((((exists fs_h_jt_mulenumoutputfirstcode. fs_h_jt_mulenumoutputfirstcode + S (jt_b_mulenumoutput) = S ((S (jt_i_mulenumoutput)) * Q)) /\ exists fs_q_jt_mulenumoutputfirstcode. P = fs_q_jt_mulenumoutputfirstcode * S ((S (jt_i_mulenumoutput)) * Q) + (jt_b_mulenumoutput))) /\ (((exists fs_h_jt_mulenumoutputfirstscale. fs_h_jt_mulenumoutputfirstscale + S (jt_c_mulenumoutput) = S ((S (jt_i_mulenumoutput)) * T)) /\ exists fs_q_jt_mulenumoutputfirstscale. R = fs_q_jt_mulenumoutputfirstscale * S ((S (jt_i_mulenumoutput)) * T) + (jt_c_mulenumoutput))))) -> (((((exists fs_h_jt_mulenumoutputsecondcode. fs_h_jt_mulenumoutputsecondcode + S (jt_d_mulenumoutput) = S ((S (jt_h_mulenumoutput)) * Q)) /\ exists fs_q_jt_mulenumoutputsecondcode. P = fs_q_jt_mulenumoutputsecondcode * S ((S (jt_h_mulenumoutput)) * Q) + (jt_d_mulenumoutput))) /\ (((exists fs_h_jt_mulenumoutputsecondscale. fs_h_jt_mulenumoutputsecondscale + S (jt_e_mulenumoutput) = S ((S (jt_h_mulenumoutput)) * T)) /\ exists fs_q_jt_mulenumoutputsecondscale. R = fs_q_jt_mulenumoutputsecondscale * S ((S (jt_h_mulenumoutput)) * T) + (jt_e_mulenumoutput))))) -> (forall jt_index_mulenumoutputsame jt_left_mulenumoutputsame jt_right_mulenumoutputsame. (exists jt_gap_mulenumoutputsameindex. jt_gap_mulenumoutputsameindex+S (jt_index_mulenumoutputsame)=(k)) -> (((exists fs_h_jt_mulenumoutputsameleft. fs_h_jt_mulenumoutputsameleft + S (jt_left_mulenumoutputsame) = S ((S (jt_index_mulenumoutputsame)) * jt_c_mulenumoutput)) /\ exists fs_q_jt_mulenumoutputsameleft. jt_b_mulenumoutput = fs_q_jt_mulenumoutputsameleft * S ((S (jt_index_mulenumoutputsame)) * jt_c_mulenumoutput) + (jt_left_mulenumoutputsame))) -> (((exists fs_h_jt_mulenumoutputsameright. fs_h_jt_mulenumoutputsameright + S (jt_right_mulenumoutputsame) = S ((S (jt_index_mulenumoutputsame)) * jt_e_mulenumoutput)) /\ exists fs_q_jt_mulenumoutputsameright. jt_d_mulenumoutput = fs_q_jt_mulenumoutputsameright * S ((S (jt_index_mulenumoutputsame)) * jt_e_mulenumoutput) + (jt_right_mulenumoutputsame))) -> jt_left_mulenumoutputsame=jt_right_mulenumoutputsame) -> jt_i_mulenumoutput=jt_h_mulenumoutput))))Constructive proof overview
Generated structural guide
Construct an actual product enumeration; no count-uniqueness or multiplicativity premise is used.
The unchanged tactic script uses 3 declared prerequisites and contains 75 exact native proof lines.
Alpha v35 checked-use · first admitted v35 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
JT0042 jordan_rectangle_crt_exists le_refl Alpha theorem; checked-use authorized JT0048 jordan_rectangle_crt_enumerationDirect 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.
Named ingredients (2)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–18
03Establish htL19–28
Establish this local claim before using it. It is not an additional assumption.
- L19
have ht : ∀ q. Le(q,u · v) → ∃ x. ∃ y. ∃ z. ∃ i. JordanRectangleCRT(m,n,k,A,B,C,D,u,E,F,G,H,v,x,y,z,i,q)Definitions: JordanRectangleCRTLe - L20
specialize jordan_rectangle_crt_exists (m) - L21
specialize jordan_rectangle_crt_exists (n) - L22
specialize jordan_rectangle_crt_exists (k) - L23
specialize jordan_rectangle_crt_exists (A) - L24
specialize jordan_rectangle_crt_exists (B) - L25
specialize jordan_rectangle_crt_exists (C) - L26
specialize jordan_rectangle_crt_exists (D) - L27
specialize jordan_rectangle_crt_exists (u) - L28
specialize jordan_rectangle_crt_exists (E)
04Use earlier factsL29–38
Instantiate or apply named facts and discharge the corresponding proof obligations.
05Establish hvL39–43
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply ht.
06Separate the logical casesL44–47
07Construct an explicit witnessL48–51
08Use earlier factsL52–61
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L52
specialize jordan_rectangle_crt_enumeration (m) - L53
specialize jordan_rectangle_crt_enumeration (n) - L54
specialize jordan_rectangle_crt_enumeration (k) - L55
specialize jordan_rectangle_crt_enumeration (A) - L56
specialize jordan_rectangle_crt_enumeration (B) - L57
specialize jordan_rectangle_crt_enumeration (C) - L58
specialize jordan_rectangle_crt_enumeration (D) - L59
specialize jordan_rectangle_crt_enumeration (u) - L60
specialize jordan_rectangle_crt_enumeration (E) - L61
specialize jordan_rectangle_crt_enumeration (F)
09Use earlier factsL62–71
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L62
specialize jordan_rectangle_crt_enumeration (G) - L63
specialize jordan_rectangle_crt_enumeration (H) - L64
specialize jordan_rectangle_crt_enumeration (v) - L65
specialize jordan_rectangle_crt_enumeration (x) - L66
specialize jordan_rectangle_crt_enumeration (x1) - L67
specialize jordan_rectangle_crt_enumeration (x2) - L68
specialize jordan_rectangle_crt_enumeration (x3) - L69
apply jordan_rectangle_crt_enumeration - L70
exact hm - L71
exact hn
Original exact command ledger · 75 lines
- 0001
intro m - 0002
intro n - 0003
intro k - 0004
intro A - 0005
intro B - 0006
intro C - 0007
intro D - 0008
intro u - 0009
intro E - 0010
intro F - 0011
intro G - 0012
intro H - 0013
intro v - 0014
intro hm - 0015
intro hn - 0016
intro hcop - 0017
intro hl - 0018
intro hh - 0019
have ht : forall q. (exists jt_gap_multablebound. jt_gap_multablebound+(q)=(u*v)) -> exists P Q R T. forall jt_index_multableprefix. (exists jt_gap_multableprefixindex. jt_gap_multableprefixindex+S (jt_index_multableprefix)=(q)) -> exists jt_row_multableprefix jt_column_multableprefix jt_b_multableprefix jt_c_multableprefix jt_d_multableprefix jt_e_multableprefix jt_f_multableprefix jt_g_multableprefix. ((exists jt_gap_multableprefixrow. jt_gap_multableprefixrow+S (jt_row_multableprefix)=(u)) /\ (((exists jt_gap_multableprefixcolumn. jt_gap_multableprefixcolumn+S (jt_column_multableprefix)=(v)) /\ (((jt_index_multableprefix=(v)*jt_row_multableprefix+jt_column_multableprefix) /\ (((((((exists fs_h_jt_multableprefixleftcode. fs_h_jt_multableprefixleftcode + S (jt_b_multableprefix) = S ((S (jt_row_multableprefix)) * B)) /\ exists fs_q_jt_multableprefixleftcode. A = fs_q_jt_multableprefixleftcode * S ((S (jt_row_multableprefix)) * B) + (jt_b_multableprefix))) /\ (((exists fs_h_jt_multableprefixleftscale. fs_h_jt_multableprefixleftscale + S (jt_c_multableprefix) = S ((S (jt_row_multableprefix)) * D)) /\ exists fs_q_jt_multableprefixleftscale. C = fs_q_jt_multableprefixleftscale * S ((S (jt_row_multableprefix)) * D) + (jt_c_multableprefix))))) /\ (((((((exists fs_h_jt_multableprefixrightcode. fs_h_jt_multableprefixrightcode + S (jt_d_multableprefix) = S ((S (jt_column_multableprefix)) * F)) /\ exists fs_q_jt_multableprefixrightcode. E = fs_q_jt_multableprefixrightcode * S ((S (jt_column_multableprefix)) * F) + (jt_d_multableprefix))) /\ (((exists fs_h_jt_multableprefixrightscale. fs_h_jt_multableprefixrightscale + S (jt_e_multableprefix) = S ((S (jt_column_multableprefix)) * H)) /\ exists fs_q_jt_multableprefixrightscale. G = fs_q_jt_multableprefixrightscale * S ((S (jt_column_multableprefix)) * H) + (jt_e_multableprefix))))) /\ (((((((exists fs_h_jt_multableprefixoutputcode. fs_h_jt_multableprefixoutputcode + S (jt_f_multableprefix) = S ((S (jt_index_multableprefix)) * Q)) /\ exists fs_q_jt_multableprefixoutputcode. P = fs_q_jt_multableprefixoutputcode * S ((S (jt_index_multableprefix)) * Q) + (jt_f_multableprefix))) /\ (((exists fs_h_jt_multableprefixoutputscale. fs_h_jt_multableprefixoutputscale + S (jt_g_multableprefix) = S ((S (jt_index_multableprefix)) * T)) /\ exists fs_q_jt_multableprefixoutputscale. R = fs_q_jt_multableprefixoutputscale * S ((S (jt_index_multableprefix)) * T) + (jt_g_multableprefix))))) /\ (((((forall jt_index_multableprefixcrtbound. (exists jt_gap_multableprefixcrtboundindex. jt_gap_multableprefixcrtboundindex+S (jt_index_multableprefixcrtbound)=(k)) -> exists jt_value_multableprefixcrtbound. ((((exists fs_h_jt_multableprefixcrtboundat. fs_h_jt_multableprefixcrtboundat + S (jt_value_multableprefixcrtbound) = S ((S (jt_index_multableprefixcrtbound)) * jt_g_multableprefix)) /\ exists fs_q_jt_multableprefixcrtboundat. jt_f_multableprefix = fs_q_jt_multableprefixcrtboundat * S ((S (jt_index_multableprefixcrtbound)) * jt_g_multableprefix) + (jt_value_multableprefixcrtbound))) /\ (exists jt_gap_multableprefixcrtboundvalue. jt_gap_multableprefixcrtboundvalue+S (jt_value_multableprefixcrtbound)=(m*n)))) /\ (((forall jt_index_multableprefixcrtleft jt_left_multableprefixcrtleft jt_right_multableprefixcrtleft. (exists jt_gap_multableprefixcrtleftindex. jt_gap_multableprefixcrtleftindex+S (jt_index_multableprefixcrtleft)=(k)) -> (((exists fs_h_jt_multableprefixcrtleftleft. fs_h_jt_multableprefixcrtleftleft + S (jt_left_multableprefixcrtleft) = S ((S (jt_index_multableprefixcrtleft)) * jt_g_multableprefix)) /\ exists fs_q_jt_multableprefixcrtleftleft. jt_f_multableprefix = fs_q_jt_multableprefixcrtleftleft * S ((S (jt_index_multableprefixcrtleft)) * jt_g_multableprefix) + (jt_left_multableprefixcrtleft))) -> (((exists fs_h_jt_multableprefixcrtleftright. fs_h_jt_multableprefixcrtleftright + S (jt_right_multableprefixcrtleft) = S ((S (jt_index_multableprefixcrtleft)) * jt_c_multableprefix)) /\ exists fs_q_jt_multableprefixcrtleftright. jt_b_multableprefix = fs_q_jt_multableprefixcrtleftright * S ((S (jt_index_multableprefixcrtleft)) * jt_c_multableprefix) + (jt_right_multableprefixcrtleft))) -> (exists jt_left_multableprefixcrtleftmod jt_right_multableprefixcrtleftmod. (jt_left_multableprefixcrtleft)+(m)*jt_left_multableprefixcrtleftmod=(jt_right_multableprefixcrtleft)+(m)*jt_right_multableprefixcrtleftmod)) /\ (forall jt_index_multableprefixcrtright jt_left_multableprefixcrtright jt_right_multableprefixcrtright. (exists jt_gap_multableprefixcrtrightindex. jt_gap_multableprefixcrtrightindex+S (jt_index_multableprefixcrtright)=(k)) -> (((exists fs_h_jt_multableprefixcrtrightleft. fs_h_jt_multableprefixcrtrightleft + S (jt_left_multableprefixcrtright) = S ((S (jt_index_multableprefixcrtright)) * jt_g_multableprefix)) /\ exists fs_q_jt_multableprefixcrtrightleft. jt_f_multableprefix = fs_q_jt_multableprefixcrtrightleft * S ((S (jt_index_multableprefixcrtright)) * jt_g_multableprefix) + (jt_left_multableprefixcrtright))) -> (((exists fs_h_jt_multableprefixcrtrightright. fs_h_jt_multableprefixcrtrightright + S (jt_right_multableprefixcrtright) = S ((S (jt_index_multableprefixcrtright)) * jt_e_multableprefix)) /\ exists fs_q_jt_multableprefixcrtrightright. jt_d_multableprefix = fs_q_jt_multableprefixcrtrightright * S ((S (jt_index_multableprefixcrtright)) * jt_e_multableprefix) + (jt_right_multableprefixcrtright))) -> (exists jt_left_multableprefixcrtrightmod jt_right_multableprefixcrtrightmod. (jt_left_multableprefixcrtright)+(n)*jt_left_multableprefixcrtrightmod=(jt_right_multableprefixcrtright)+(n)*jt_right_multableprefixcrtrightmod)))))) /\ (forall jt_divisor_multableprefixprimitive. (exists jt_factor_multableprefixprimitivemodulus. (m*n)=(jt_divisor_multableprefixprimitive)*jt_factor_multableprefixprimitivemodulus) -> (forall jt_index_multableprefixprimitivecoordinates jt_value_multableprefixprimitivecoordinates. (exists jt_gap_multableprefixprimitivecoordinatesindex. jt_gap_multableprefixprimitivecoordinatesindex+S (jt_index_multableprefixprimitivecoordinates)=(k)) -> (((exists fs_h_jt_multableprefixprimitivecoordinatesat. fs_h_jt_multableprefixprimitivecoordinatesat + S (jt_value_multableprefixprimitivecoordinates) = S ((S (jt_index_multableprefixprimitivecoordinates)) * jt_g_multableprefix)) /\ exists fs_q_jt_multableprefixprimitivecoordinatesat. jt_f_multableprefix = fs_q_jt_multableprefixprimitivecoordinatesat * S ((S (jt_index_multableprefixprimitivecoordinates)) * jt_g_multableprefix) + (jt_value_multableprefixprimitivecoordinates))) -> (exists jt_factor_multableprefixprimitivecoordinatesdivides. (jt_value_multableprefixprimitivecoordinates)=(jt_divisor_multableprefixprimitive)*jt_factor_multableprefixprimitivecoordinatesdivides)) -> jt_divisor_multableprefixprimitive=1)))))))))))))) - 0020
specialize jordan_rectangle_crt_exists (m) - 0021
specialize jordan_rectangle_crt_exists (n) - 0022
specialize jordan_rectangle_crt_exists (k) - 0023
specialize jordan_rectangle_crt_exists (A) - 0024
specialize jordan_rectangle_crt_exists (B) - 0025
specialize jordan_rectangle_crt_exists (C) - 0026
specialize jordan_rectangle_crt_exists (D) - 0027
specialize jordan_rectangle_crt_exists (u) - 0028
specialize jordan_rectangle_crt_exists (E) - 0029
specialize jordan_rectangle_crt_exists (F) - 0030
specialize jordan_rectangle_crt_exists (G) - 0031
specialize jordan_rectangle_crt_exists (H) - 0032
specialize jordan_rectangle_crt_exists (v) - 0033
apply jordan_rectangle_crt_exists - 0034
exact hm - 0035
exact hn - 0036
exact hcop - 0037
exact hl - 0038
exact hh - 0039
have hv : exists P Q R T. forall jt_index_mulenumtable. (exists jt_gap_mulenumtableindex. jt_gap_mulenumtableindex+S (jt_index_mulenumtable)=(u*v)) -> exists jt_row_mulenumtable jt_column_mulenumtable jt_b_mulenumtable jt_c_mulenumtable jt_d_mulenumtable jt_e_mulenumtable jt_f_mulenumtable jt_g_mulenumtable. ((exists jt_gap_mulenumtablerow. jt_gap_mulenumtablerow+S (jt_row_mulenumtable)=(u)) /\ (((exists jt_gap_mulenumtablecolumn. jt_gap_mulenumtablecolumn+S (jt_column_mulenumtable)=(v)) /\ (((jt_index_mulenumtable=(v)*jt_row_mulenumtable+jt_column_mulenumtable) /\ (((((((exists fs_h_jt_mulenumtableleftcode. fs_h_jt_mulenumtableleftcode + S (jt_b_mulenumtable) = S ((S (jt_row_mulenumtable)) * B)) /\ exists fs_q_jt_mulenumtableleftcode. A = fs_q_jt_mulenumtableleftcode * S ((S (jt_row_mulenumtable)) * B) + (jt_b_mulenumtable))) /\ (((exists fs_h_jt_mulenumtableleftscale. fs_h_jt_mulenumtableleftscale + S (jt_c_mulenumtable) = S ((S (jt_row_mulenumtable)) * D)) /\ exists fs_q_jt_mulenumtableleftscale. C = fs_q_jt_mulenumtableleftscale * S ((S (jt_row_mulenumtable)) * D) + (jt_c_mulenumtable))))) /\ (((((((exists fs_h_jt_mulenumtablerightcode. fs_h_jt_mulenumtablerightcode + S (jt_d_mulenumtable) = S ((S (jt_column_mulenumtable)) * F)) /\ exists fs_q_jt_mulenumtablerightcode. E = fs_q_jt_mulenumtablerightcode * S ((S (jt_column_mulenumtable)) * F) + (jt_d_mulenumtable))) /\ (((exists fs_h_jt_mulenumtablerightscale. fs_h_jt_mulenumtablerightscale + S (jt_e_mulenumtable) = S ((S (jt_column_mulenumtable)) * H)) /\ exists fs_q_jt_mulenumtablerightscale. G = fs_q_jt_mulenumtablerightscale * S ((S (jt_column_mulenumtable)) * H) + (jt_e_mulenumtable))))) /\ (((((((exists fs_h_jt_mulenumtableoutputcode. fs_h_jt_mulenumtableoutputcode + S (jt_f_mulenumtable) = S ((S (jt_index_mulenumtable)) * Q)) /\ exists fs_q_jt_mulenumtableoutputcode. P = fs_q_jt_mulenumtableoutputcode * S ((S (jt_index_mulenumtable)) * Q) + (jt_f_mulenumtable))) /\ (((exists fs_h_jt_mulenumtableoutputscale. fs_h_jt_mulenumtableoutputscale + S (jt_g_mulenumtable) = S ((S (jt_index_mulenumtable)) * T)) /\ exists fs_q_jt_mulenumtableoutputscale. R = fs_q_jt_mulenumtableoutputscale * S ((S (jt_index_mulenumtable)) * T) + (jt_g_mulenumtable))))) /\ (((((forall jt_index_mulenumtablecrtbound. (exists jt_gap_mulenumtablecrtboundindex. jt_gap_mulenumtablecrtboundindex+S (jt_index_mulenumtablecrtbound)=(k)) -> exists jt_value_mulenumtablecrtbound. ((((exists fs_h_jt_mulenumtablecrtboundat. fs_h_jt_mulenumtablecrtboundat + S (jt_value_mulenumtablecrtbound) = S ((S (jt_index_mulenumtablecrtbound)) * jt_g_mulenumtable)) /\ exists fs_q_jt_mulenumtablecrtboundat. jt_f_mulenumtable = fs_q_jt_mulenumtablecrtboundat * S ((S (jt_index_mulenumtablecrtbound)) * jt_g_mulenumtable) + (jt_value_mulenumtablecrtbound))) /\ (exists jt_gap_mulenumtablecrtboundvalue. jt_gap_mulenumtablecrtboundvalue+S (jt_value_mulenumtablecrtbound)=(m*n)))) /\ (((forall jt_index_mulenumtablecrtleft jt_left_mulenumtablecrtleft jt_right_mulenumtablecrtleft. (exists jt_gap_mulenumtablecrtleftindex. jt_gap_mulenumtablecrtleftindex+S (jt_index_mulenumtablecrtleft)=(k)) -> (((exists fs_h_jt_mulenumtablecrtleftleft. fs_h_jt_mulenumtablecrtleftleft + S (jt_left_mulenumtablecrtleft) = S ((S (jt_index_mulenumtablecrtleft)) * jt_g_mulenumtable)) /\ exists fs_q_jt_mulenumtablecrtleftleft. jt_f_mulenumtable = fs_q_jt_mulenumtablecrtleftleft * S ((S (jt_index_mulenumtablecrtleft)) * jt_g_mulenumtable) + (jt_left_mulenumtablecrtleft))) -> (((exists fs_h_jt_mulenumtablecrtleftright. fs_h_jt_mulenumtablecrtleftright + S (jt_right_mulenumtablecrtleft) = S ((S (jt_index_mulenumtablecrtleft)) * jt_c_mulenumtable)) /\ exists fs_q_jt_mulenumtablecrtleftright. jt_b_mulenumtable = fs_q_jt_mulenumtablecrtleftright * S ((S (jt_index_mulenumtablecrtleft)) * jt_c_mulenumtable) + (jt_right_mulenumtablecrtleft))) -> (exists jt_left_mulenumtablecrtleftmod jt_right_mulenumtablecrtleftmod. (jt_left_mulenumtablecrtleft)+(m)*jt_left_mulenumtablecrtleftmod=(jt_right_mulenumtablecrtleft)+(m)*jt_right_mulenumtablecrtleftmod)) /\ (forall jt_index_mulenumtablecrtright jt_left_mulenumtablecrtright jt_right_mulenumtablecrtright. (exists jt_gap_mulenumtablecrtrightindex. jt_gap_mulenumtablecrtrightindex+S (jt_index_mulenumtablecrtright)=(k)) -> (((exists fs_h_jt_mulenumtablecrtrightleft. fs_h_jt_mulenumtablecrtrightleft + S (jt_left_mulenumtablecrtright) = S ((S (jt_index_mulenumtablecrtright)) * jt_g_mulenumtable)) /\ exists fs_q_jt_mulenumtablecrtrightleft. jt_f_mulenumtable = fs_q_jt_mulenumtablecrtrightleft * S ((S (jt_index_mulenumtablecrtright)) * jt_g_mulenumtable) + (jt_left_mulenumtablecrtright))) -> (((exists fs_h_jt_mulenumtablecrtrightright. fs_h_jt_mulenumtablecrtrightright + S (jt_right_mulenumtablecrtright) = S ((S (jt_index_mulenumtablecrtright)) * jt_e_mulenumtable)) /\ exists fs_q_jt_mulenumtablecrtrightright. jt_d_mulenumtable = fs_q_jt_mulenumtablecrtrightright * S ((S (jt_index_mulenumtablecrtright)) * jt_e_mulenumtable) + (jt_right_mulenumtablecrtright))) -> (exists jt_left_mulenumtablecrtrightmod jt_right_mulenumtablecrtrightmod. (jt_left_mulenumtablecrtright)+(n)*jt_left_mulenumtablecrtrightmod=(jt_right_mulenumtablecrtright)+(n)*jt_right_mulenumtablecrtrightmod)))))) /\ (forall jt_divisor_mulenumtableprimitive. (exists jt_factor_mulenumtableprimitivemodulus. (m*n)=(jt_divisor_mulenumtableprimitive)*jt_factor_mulenumtableprimitivemodulus) -> (forall jt_index_mulenumtableprimitivecoordinates jt_value_mulenumtableprimitivecoordinates. (exists jt_gap_mulenumtableprimitivecoordinatesindex. jt_gap_mulenumtableprimitivecoordinatesindex+S (jt_index_mulenumtableprimitivecoordinates)=(k)) -> (((exists fs_h_jt_mulenumtableprimitivecoordinatesat. fs_h_jt_mulenumtableprimitivecoordinatesat + S (jt_value_mulenumtableprimitivecoordinates) = S ((S (jt_index_mulenumtableprimitivecoordinates)) * jt_g_mulenumtable)) /\ exists fs_q_jt_mulenumtableprimitivecoordinatesat. jt_f_mulenumtable = fs_q_jt_mulenumtableprimitivecoordinatesat * S ((S (jt_index_mulenumtableprimitivecoordinates)) * jt_g_mulenumtable) + (jt_value_mulenumtableprimitivecoordinates))) -> (exists jt_factor_mulenumtableprimitivecoordinatesdivides. (jt_value_mulenumtableprimitivecoordinates)=(jt_divisor_mulenumtableprimitive)*jt_factor_mulenumtableprimitivecoordinatesdivides)) -> jt_divisor_mulenumtableprimitive=1)))))))))))))) - 0040
specialize ht (u*v) - 0041
apply ht - 0042
specialize le_refl (u*v) - 0043
apply le_refl - 0044
cases hv - 0045
cases hv_witness - 0046
cases hv_witness_witness - 0047
cases hv_witness_witness_witness - 0048
exists x - 0049
exists x1 - 0050
exists x2 - 0051
exists x3 - 0052
specialize jordan_rectangle_crt_enumeration (m) - 0053
specialize jordan_rectangle_crt_enumeration (n) - 0054
specialize jordan_rectangle_crt_enumeration (k) - 0055
specialize jordan_rectangle_crt_enumeration (A) - 0056
specialize jordan_rectangle_crt_enumeration (B) - 0057
specialize jordan_rectangle_crt_enumeration (C) - 0058
specialize jordan_rectangle_crt_enumeration (D) - 0059
specialize jordan_rectangle_crt_enumeration (u) - 0060
specialize jordan_rectangle_crt_enumeration (E) - 0061
specialize jordan_rectangle_crt_enumeration (F) - 0062
specialize jordan_rectangle_crt_enumeration (G) - 0063
specialize jordan_rectangle_crt_enumeration (H) - 0064
specialize jordan_rectangle_crt_enumeration (v) - 0065
specialize jordan_rectangle_crt_enumeration (x) - 0066
specialize jordan_rectangle_crt_enumeration (x1) - 0067
specialize jordan_rectangle_crt_enumeration (x2) - 0068
specialize jordan_rectangle_crt_enumeration (x3) - 0069
apply jordan_rectangle_crt_enumeration - 0070
exact hm - 0071
exact hn - 0072
exact hcop - 0073
exact hl - 0074
exact hh - 0075
exact hv_witness_witness_witness_witness