Exact expanded first-order arithmetic statement
forall m n k A B C D u E F G H v P Q R T p z f g h s. (((forall jt_i_enumleft. (exists jt_gap_enumleftsoundindex. jt_gap_enumleftsoundindex+S (jt_i_enumleft)=(u)) -> exists jt_b_enumleft jt_c_enumleft. ((((((exists fs_h_jt_enumleftsoundcode. fs_h_jt_enumleftsoundcode + S (jt_b_enumleft) = S ((S (jt_i_enumleft)) * B)) /\ exists fs_q_jt_enumleftsoundcode. A = fs_q_jt_enumleftsoundcode * S ((S (jt_i_enumleft)) * B) + (jt_b_enumleft))) /\ (((exists fs_h_jt_enumleftsoundscale. fs_h_jt_enumleftsoundscale + S (jt_c_enumleft) = S ((S (jt_i_enumleft)) * D)) /\ exists fs_q_jt_enumleftsoundscale. C = fs_q_jt_enumleftsoundscale * S ((S (jt_i_enumleft)) * D) + (jt_c_enumleft))))) /\ (((forall jt_index_enumleftbound. (exists jt_gap_enumleftboundindex. jt_gap_enumleftboundindex+S (jt_index_enumleftbound)=(k)) -> exists jt_value_enumleftbound. ((((exists fs_h_jt_enumleftboundat. fs_h_jt_enumleftboundat + S (jt_value_enumleftbound) = S ((S (jt_index_enumleftbound)) * jt_c_enumleft)) /\ exists fs_q_jt_enumleftboundat. jt_b_enumleft = fs_q_jt_enumleftboundat * S ((S (jt_index_enumleftbound)) * jt_c_enumleft) + (jt_value_enumleftbound))) /\ (exists jt_gap_enumleftboundvalue. jt_gap_enumleftboundvalue+S (jt_value_enumleftbound)=(m)))) /\ (forall jt_divisor_enumleftprimitive. (exists jt_factor_enumleftprimitivemodulus. (m)=(jt_divisor_enumleftprimitive)*jt_factor_enumleftprimitivemodulus) -> (forall jt_index_enumleftprimitivecoordinates jt_value_enumleftprimitivecoordinates. (exists jt_gap_enumleftprimitivecoordinatesindex. jt_gap_enumleftprimitivecoordinatesindex+S (jt_index_enumleftprimitivecoordinates)=(k)) -> (((exists fs_h_jt_enumleftprimitivecoordinatesat. fs_h_jt_enumleftprimitivecoordinatesat + S (jt_value_enumleftprimitivecoordinates) = S ((S (jt_index_enumleftprimitivecoordinates)) * jt_c_enumleft)) /\ exists fs_q_jt_enumleftprimitivecoordinatesat. jt_b_enumleft = fs_q_jt_enumleftprimitivecoordinatesat * S ((S (jt_index_enumleftprimitivecoordinates)) * jt_c_enumleft) + (jt_value_enumleftprimitivecoordinates))) -> (exists jt_factor_enumleftprimitivecoordinatesdivides. (jt_value_enumleftprimitivecoordinates)=(jt_divisor_enumleftprimitive)*jt_factor_enumleftprimitivecoordinatesdivides)) -> jt_divisor_enumleftprimitive=1))))) /\ (((forall jt_b_enumleft jt_c_enumleft. (forall jt_index_enumleftinputbound. (exists jt_gap_enumleftinputboundindex. jt_gap_enumleftinputboundindex+S (jt_index_enumleftinputbound)=(k)) -> exists jt_value_enumleftinputbound. ((((exists fs_h_jt_enumleftinputboundat. fs_h_jt_enumleftinputboundat + S (jt_value_enumleftinputbound) = S ((S (jt_index_enumleftinputbound)) * jt_c_enumleft)) /\ exists fs_q_jt_enumleftinputboundat. jt_b_enumleft = fs_q_jt_enumleftinputboundat * S ((S (jt_index_enumleftinputbound)) * jt_c_enumleft) + (jt_value_enumleftinputbound))) /\ (exists jt_gap_enumleftinputboundvalue. jt_gap_enumleftinputboundvalue+S (jt_value_enumleftinputbound)=(m)))) -> (forall jt_divisor_enumleftinputprimitive. (exists jt_factor_enumleftinputprimitivemodulus. (m)=(jt_divisor_enumleftinputprimitive)*jt_factor_enumleftinputprimitivemodulus) -> (forall jt_index_enumleftinputprimitivecoordinates jt_value_enumleftinputprimitivecoordinates. (exists jt_gap_enumleftinputprimitivecoordinatesindex. jt_gap_enumleftinputprimitivecoordinatesindex+S (jt_index_enumleftinputprimitivecoordinates)=(k)) -> (((exists fs_h_jt_enumleftinputprimitivecoordinatesat. fs_h_jt_enumleftinputprimitivecoordinatesat + S (jt_value_enumleftinputprimitivecoordinates) = S ((S (jt_index_enumleftinputprimitivecoordinates)) * jt_c_enumleft)) /\ exists fs_q_jt_enumleftinputprimitivecoordinatesat. jt_b_enumleft = fs_q_jt_enumleftinputprimitivecoordinatesat * S ((S (jt_index_enumleftinputprimitivecoordinates)) * jt_c_enumleft) + (jt_value_enumleftinputprimitivecoordinates))) -> (exists jt_factor_enumleftinputprimitivecoordinatesdivides. (jt_value_enumleftinputprimitivecoordinates)=(jt_divisor_enumleftinputprimitive)*jt_factor_enumleftinputprimitivecoordinatesdivides)) -> jt_divisor_enumleftinputprimitive=1) -> exists jt_i_enumleft jt_d_enumleft jt_e_enumleft. ((exists jt_gap_enumleftcompleteindex. jt_gap_enumleftcompleteindex+S (jt_i_enumleft)=(u)) /\ (((((((exists fs_h_jt_enumleftcompletecode. fs_h_jt_enumleftcompletecode + S (jt_d_enumleft) = S ((S (jt_i_enumleft)) * B)) /\ exists fs_q_jt_enumleftcompletecode. A = fs_q_jt_enumleftcompletecode * S ((S (jt_i_enumleft)) * B) + (jt_d_enumleft))) /\ (((exists fs_h_jt_enumleftcompletescale. fs_h_jt_enumleftcompletescale + S (jt_e_enumleft) = S ((S (jt_i_enumleft)) * D)) /\ exists fs_q_jt_enumleftcompletescale. C = fs_q_jt_enumleftcompletescale * S ((S (jt_i_enumleft)) * D) + (jt_e_enumleft))))) /\ (forall jt_index_enumleftrepresented jt_left_enumleftrepresented jt_right_enumleftrepresented. (exists jt_gap_enumleftrepresentedindex. jt_gap_enumleftrepresentedindex+S (jt_index_enumleftrepresented)=(k)) -> (((exists fs_h_jt_enumleftrepresentedleft. fs_h_jt_enumleftrepresentedleft + S (jt_left_enumleftrepresented) = S ((S (jt_index_enumleftrepresented)) * jt_c_enumleft)) /\ exists fs_q_jt_enumleftrepresentedleft. jt_b_enumleft = fs_q_jt_enumleftrepresentedleft * S ((S (jt_index_enumleftrepresented)) * jt_c_enumleft) + (jt_left_enumleftrepresented))) -> (((exists fs_h_jt_enumleftrepresentedright. fs_h_jt_enumleftrepresentedright + S (jt_right_enumleftrepresented) = S ((S (jt_index_enumleftrepresented)) * jt_e_enumleft)) /\ exists fs_q_jt_enumleftrepresentedright. jt_d_enumleft = fs_q_jt_enumleftrepresentedright * S ((S (jt_index_enumleftrepresented)) * jt_e_enumleft) + (jt_right_enumleftrepresented))) -> jt_left_enumleftrepresented=jt_right_enumleftrepresented))))) /\ (forall jt_i_enumleft jt_h_enumleft jt_b_enumleft jt_c_enumleft jt_d_enumleft jt_e_enumleft. (exists jt_gap_enumleftfirstindex. jt_gap_enumleftfirstindex+S (jt_i_enumleft)=(u)) -> (exists jt_gap_enumleftsecondindex. jt_gap_enumleftsecondindex+S (jt_h_enumleft)=(u)) -> (((((exists fs_h_jt_enumleftfirstcode. fs_h_jt_enumleftfirstcode + S (jt_b_enumleft) = S ((S (jt_i_enumleft)) * B)) /\ exists fs_q_jt_enumleftfirstcode. A = fs_q_jt_enumleftfirstcode * S ((S (jt_i_enumleft)) * B) + (jt_b_enumleft))) /\ (((exists fs_h_jt_enumleftfirstscale. fs_h_jt_enumleftfirstscale + S (jt_c_enumleft) = S ((S (jt_i_enumleft)) * D)) /\ exists fs_q_jt_enumleftfirstscale. C = fs_q_jt_enumleftfirstscale * S ((S (jt_i_enumleft)) * D) + (jt_c_enumleft))))) -> (((((exists fs_h_jt_enumleftsecondcode. fs_h_jt_enumleftsecondcode + S (jt_d_enumleft) = S ((S (jt_h_enumleft)) * B)) /\ exists fs_q_jt_enumleftsecondcode. A = fs_q_jt_enumleftsecondcode * S ((S (jt_h_enumleft)) * B) + (jt_d_enumleft))) /\ (((exists fs_h_jt_enumleftsecondscale. fs_h_jt_enumleftsecondscale + S (jt_e_enumleft) = S ((S (jt_h_enumleft)) * D)) /\ exists fs_q_jt_enumleftsecondscale. C = fs_q_jt_enumleftsecondscale * S ((S (jt_h_enumleft)) * D) + (jt_e_enumleft))))) -> (forall jt_index_enumleftsame jt_left_enumleftsame jt_right_enumleftsame. (exists jt_gap_enumleftsameindex. jt_gap_enumleftsameindex+S (jt_index_enumleftsame)=(k)) -> (((exists fs_h_jt_enumleftsameleft. fs_h_jt_enumleftsameleft + S (jt_left_enumleftsame) = S ((S (jt_index_enumleftsame)) * jt_c_enumleft)) /\ exists fs_q_jt_enumleftsameleft. jt_b_enumleft = fs_q_jt_enumleftsameleft * S ((S (jt_index_enumleftsame)) * jt_c_enumleft) + (jt_left_enumleftsame))) -> (((exists fs_h_jt_enumleftsameright. fs_h_jt_enumleftsameright + S (jt_right_enumleftsame) = S ((S (jt_index_enumleftsame)) * jt_e_enumleft)) /\ exists fs_q_jt_enumleftsameright. jt_d_enumleft = fs_q_jt_enumleftsameright * S ((S (jt_index_enumleftsame)) * jt_e_enumleft) + (jt_right_enumleftsame))) -> jt_left_enumleftsame=jt_right_enumleftsame) -> jt_i_enumleft=jt_h_enumleft))))) -> (((forall jt_i_enumright. (exists jt_gap_enumrightsoundindex. jt_gap_enumrightsoundindex+S (jt_i_enumright)=(v)) -> exists jt_b_enumright jt_c_enumright. ((((((exists fs_h_jt_enumrightsoundcode. fs_h_jt_enumrightsoundcode + S (jt_b_enumright) = S ((S (jt_i_enumright)) * F)) /\ exists fs_q_jt_enumrightsoundcode. E = fs_q_jt_enumrightsoundcode * S ((S (jt_i_enumright)) * F) + (jt_b_enumright))) /\ (((exists fs_h_jt_enumrightsoundscale. fs_h_jt_enumrightsoundscale + S (jt_c_enumright) = S ((S (jt_i_enumright)) * H)) /\ exists fs_q_jt_enumrightsoundscale. G = fs_q_jt_enumrightsoundscale * S ((S (jt_i_enumright)) * H) + (jt_c_enumright))))) /\ (((forall jt_index_enumrightbound. (exists jt_gap_enumrightboundindex. jt_gap_enumrightboundindex+S (jt_index_enumrightbound)=(k)) -> exists jt_value_enumrightbound. ((((exists fs_h_jt_enumrightboundat. fs_h_jt_enumrightboundat + S (jt_value_enumrightbound) = S ((S (jt_index_enumrightbound)) * jt_c_enumright)) /\ exists fs_q_jt_enumrightboundat. jt_b_enumright = fs_q_jt_enumrightboundat * S ((S (jt_index_enumrightbound)) * jt_c_enumright) + (jt_value_enumrightbound))) /\ (exists jt_gap_enumrightboundvalue. jt_gap_enumrightboundvalue+S (jt_value_enumrightbound)=(n)))) /\ (forall jt_divisor_enumrightprimitive. (exists jt_factor_enumrightprimitivemodulus. (n)=(jt_divisor_enumrightprimitive)*jt_factor_enumrightprimitivemodulus) -> (forall jt_index_enumrightprimitivecoordinates jt_value_enumrightprimitivecoordinates. (exists jt_gap_enumrightprimitivecoordinatesindex. jt_gap_enumrightprimitivecoordinatesindex+S (jt_index_enumrightprimitivecoordinates)=(k)) -> (((exists fs_h_jt_enumrightprimitivecoordinatesat. fs_h_jt_enumrightprimitivecoordinatesat + S (jt_value_enumrightprimitivecoordinates) = S ((S (jt_index_enumrightprimitivecoordinates)) * jt_c_enumright)) /\ exists fs_q_jt_enumrightprimitivecoordinatesat. jt_b_enumright = fs_q_jt_enumrightprimitivecoordinatesat * S ((S (jt_index_enumrightprimitivecoordinates)) * jt_c_enumright) + (jt_value_enumrightprimitivecoordinates))) -> (exists jt_factor_enumrightprimitivecoordinatesdivides. (jt_value_enumrightprimitivecoordinates)=(jt_divisor_enumrightprimitive)*jt_factor_enumrightprimitivecoordinatesdivides)) -> jt_divisor_enumrightprimitive=1))))) /\ (((forall jt_b_enumright jt_c_enumright. (forall jt_index_enumrightinputbound. (exists jt_gap_enumrightinputboundindex. jt_gap_enumrightinputboundindex+S (jt_index_enumrightinputbound)=(k)) -> exists jt_value_enumrightinputbound. ((((exists fs_h_jt_enumrightinputboundat. fs_h_jt_enumrightinputboundat + S (jt_value_enumrightinputbound) = S ((S (jt_index_enumrightinputbound)) * jt_c_enumright)) /\ exists fs_q_jt_enumrightinputboundat. jt_b_enumright = fs_q_jt_enumrightinputboundat * S ((S (jt_index_enumrightinputbound)) * jt_c_enumright) + (jt_value_enumrightinputbound))) /\ (exists jt_gap_enumrightinputboundvalue. jt_gap_enumrightinputboundvalue+S (jt_value_enumrightinputbound)=(n)))) -> (forall jt_divisor_enumrightinputprimitive. (exists jt_factor_enumrightinputprimitivemodulus. (n)=(jt_divisor_enumrightinputprimitive)*jt_factor_enumrightinputprimitivemodulus) -> (forall jt_index_enumrightinputprimitivecoordinates jt_value_enumrightinputprimitivecoordinates. (exists jt_gap_enumrightinputprimitivecoordinatesindex. jt_gap_enumrightinputprimitivecoordinatesindex+S (jt_index_enumrightinputprimitivecoordinates)=(k)) -> (((exists fs_h_jt_enumrightinputprimitivecoordinatesat. fs_h_jt_enumrightinputprimitivecoordinatesat + S (jt_value_enumrightinputprimitivecoordinates) = S ((S (jt_index_enumrightinputprimitivecoordinates)) * jt_c_enumright)) /\ exists fs_q_jt_enumrightinputprimitivecoordinatesat. jt_b_enumright = fs_q_jt_enumrightinputprimitivecoordinatesat * S ((S (jt_index_enumrightinputprimitivecoordinates)) * jt_c_enumright) + (jt_value_enumrightinputprimitivecoordinates))) -> (exists jt_factor_enumrightinputprimitivecoordinatesdivides. (jt_value_enumrightinputprimitivecoordinates)=(jt_divisor_enumrightinputprimitive)*jt_factor_enumrightinputprimitivecoordinatesdivides)) -> jt_divisor_enumrightinputprimitive=1) -> exists jt_i_enumright jt_d_enumright jt_e_enumright. ((exists jt_gap_enumrightcompleteindex. jt_gap_enumrightcompleteindex+S (jt_i_enumright)=(v)) /\ (((((((exists fs_h_jt_enumrightcompletecode. fs_h_jt_enumrightcompletecode + S (jt_d_enumright) = S ((S (jt_i_enumright)) * F)) /\ exists fs_q_jt_enumrightcompletecode. E = fs_q_jt_enumrightcompletecode * S ((S (jt_i_enumright)) * F) + (jt_d_enumright))) /\ (((exists fs_h_jt_enumrightcompletescale. fs_h_jt_enumrightcompletescale + S (jt_e_enumright) = S ((S (jt_i_enumright)) * H)) /\ exists fs_q_jt_enumrightcompletescale. G = fs_q_jt_enumrightcompletescale * S ((S (jt_i_enumright)) * H) + (jt_e_enumright))))) /\ (forall jt_index_enumrightrepresented jt_left_enumrightrepresented jt_right_enumrightrepresented. (exists jt_gap_enumrightrepresentedindex. jt_gap_enumrightrepresentedindex+S (jt_index_enumrightrepresented)=(k)) -> (((exists fs_h_jt_enumrightrepresentedleft. fs_h_jt_enumrightrepresentedleft + S (jt_left_enumrightrepresented) = S ((S (jt_index_enumrightrepresented)) * jt_c_enumright)) /\ exists fs_q_jt_enumrightrepresentedleft. jt_b_enumright = fs_q_jt_enumrightrepresentedleft * S ((S (jt_index_enumrightrepresented)) * jt_c_enumright) + (jt_left_enumrightrepresented))) -> (((exists fs_h_jt_enumrightrepresentedright. fs_h_jt_enumrightrepresentedright + S (jt_right_enumrightrepresented) = S ((S (jt_index_enumrightrepresented)) * jt_e_enumright)) /\ exists fs_q_jt_enumrightrepresentedright. jt_d_enumright = fs_q_jt_enumrightrepresentedright * S ((S (jt_index_enumrightrepresented)) * jt_e_enumright) + (jt_right_enumrightrepresented))) -> jt_left_enumrightrepresented=jt_right_enumrightrepresented))))) /\ (forall jt_i_enumright jt_h_enumright jt_b_enumright jt_c_enumright jt_d_enumright jt_e_enumright. (exists jt_gap_enumrightfirstindex. jt_gap_enumrightfirstindex+S (jt_i_enumright)=(v)) -> (exists jt_gap_enumrightsecondindex. jt_gap_enumrightsecondindex+S (jt_h_enumright)=(v)) -> (((((exists fs_h_jt_enumrightfirstcode. fs_h_jt_enumrightfirstcode + S (jt_b_enumright) = S ((S (jt_i_enumright)) * F)) /\ exists fs_q_jt_enumrightfirstcode. E = fs_q_jt_enumrightfirstcode * S ((S (jt_i_enumright)) * F) + (jt_b_enumright))) /\ (((exists fs_h_jt_enumrightfirstscale. fs_h_jt_enumrightfirstscale + S (jt_c_enumright) = S ((S (jt_i_enumright)) * H)) /\ exists fs_q_jt_enumrightfirstscale. G = fs_q_jt_enumrightfirstscale * S ((S (jt_i_enumright)) * H) + (jt_c_enumright))))) -> (((((exists fs_h_jt_enumrightsecondcode. fs_h_jt_enumrightsecondcode + S (jt_d_enumright) = S ((S (jt_h_enumright)) * F)) /\ exists fs_q_jt_enumrightsecondcode. E = fs_q_jt_enumrightsecondcode * S ((S (jt_h_enumright)) * F) + (jt_d_enumright))) /\ (((exists fs_h_jt_enumrightsecondscale. fs_h_jt_enumrightsecondscale + S (jt_e_enumright) = S ((S (jt_h_enumright)) * H)) /\ exists fs_q_jt_enumrightsecondscale. G = fs_q_jt_enumrightsecondscale * S ((S (jt_h_enumright)) * H) + (jt_e_enumright))))) -> (forall jt_index_enumrightsame jt_left_enumrightsame jt_right_enumrightsame. (exists jt_gap_enumrightsameindex. jt_gap_enumrightsameindex+S (jt_index_enumrightsame)=(k)) -> (((exists fs_h_jt_enumrightsameleft. fs_h_jt_enumrightsameleft + S (jt_left_enumrightsame) = S ((S (jt_index_enumrightsame)) * jt_c_enumright)) /\ exists fs_q_jt_enumrightsameleft. jt_b_enumright = fs_q_jt_enumrightsameleft * S ((S (jt_index_enumrightsame)) * jt_c_enumright) + (jt_left_enumrightsame))) -> (((exists fs_h_jt_enumrightsameright. fs_h_jt_enumrightsameright + S (jt_right_enumrightsame) = S ((S (jt_index_enumrightsame)) * jt_e_enumright)) /\ exists fs_q_jt_enumrightsameright. jt_d_enumright = fs_q_jt_enumrightsameright * S ((S (jt_index_enumrightsame)) * jt_e_enumright) + (jt_right_enumrightsame))) -> jt_left_enumrightsame=jt_right_enumrightsame) -> jt_i_enumright=jt_h_enumright))))) -> (forall jt_index_enumrect. (exists jt_gap_enumrectindex. jt_gap_enumrectindex+S (jt_index_enumrect)=(u*v)) -> exists jt_row_enumrect jt_column_enumrect jt_b_enumrect jt_c_enumrect jt_d_enumrect jt_e_enumrect jt_f_enumrect jt_g_enumrect. ((exists jt_gap_enumrectrow. jt_gap_enumrectrow+S (jt_row_enumrect)=(u)) /\ (((exists jt_gap_enumrectcolumn. jt_gap_enumrectcolumn+S (jt_column_enumrect)=(v)) /\ (((jt_index_enumrect=(v)*jt_row_enumrect+jt_column_enumrect) /\ (((((((exists fs_h_jt_enumrectleftcode. fs_h_jt_enumrectleftcode + S (jt_b_enumrect) = S ((S (jt_row_enumrect)) * B)) /\ exists fs_q_jt_enumrectleftcode. A = fs_q_jt_enumrectleftcode * S ((S (jt_row_enumrect)) * B) + (jt_b_enumrect))) /\ (((exists fs_h_jt_enumrectleftscale. fs_h_jt_enumrectleftscale + S (jt_c_enumrect) = S ((S (jt_row_enumrect)) * D)) /\ exists fs_q_jt_enumrectleftscale. C = fs_q_jt_enumrectleftscale * S ((S (jt_row_enumrect)) * D) + (jt_c_enumrect))))) /\ (((((((exists fs_h_jt_enumrectrightcode. fs_h_jt_enumrectrightcode + S (jt_d_enumrect) = S ((S (jt_column_enumrect)) * F)) /\ exists fs_q_jt_enumrectrightcode. E = fs_q_jt_enumrectrightcode * S ((S (jt_column_enumrect)) * F) + (jt_d_enumrect))) /\ (((exists fs_h_jt_enumrectrightscale. fs_h_jt_enumrectrightscale + S (jt_e_enumrect) = S ((S (jt_column_enumrect)) * H)) /\ exists fs_q_jt_enumrectrightscale. G = fs_q_jt_enumrectrightscale * S ((S (jt_column_enumrect)) * H) + (jt_e_enumrect))))) /\ (((((((exists fs_h_jt_enumrectoutputcode. fs_h_jt_enumrectoutputcode + S (jt_f_enumrect) = S ((S (jt_index_enumrect)) * Q)) /\ exists fs_q_jt_enumrectoutputcode. P = fs_q_jt_enumrectoutputcode * S ((S (jt_index_enumrect)) * Q) + (jt_f_enumrect))) /\ (((exists fs_h_jt_enumrectoutputscale. fs_h_jt_enumrectoutputscale + S (jt_g_enumrect) = S ((S (jt_index_enumrect)) * T)) /\ exists fs_q_jt_enumrectoutputscale. R = fs_q_jt_enumrectoutputscale * S ((S (jt_index_enumrect)) * T) + (jt_g_enumrect))))) /\ (((((forall jt_index_enumrectcrtbound. (exists jt_gap_enumrectcrtboundindex. jt_gap_enumrectcrtboundindex+S (jt_index_enumrectcrtbound)=(k)) -> exists jt_value_enumrectcrtbound. ((((exists fs_h_jt_enumrectcrtboundat. fs_h_jt_enumrectcrtboundat + S (jt_value_enumrectcrtbound) = S ((S (jt_index_enumrectcrtbound)) * jt_g_enumrect)) /\ exists fs_q_jt_enumrectcrtboundat. jt_f_enumrect = fs_q_jt_enumrectcrtboundat * S ((S (jt_index_enumrectcrtbound)) * jt_g_enumrect) + (jt_value_enumrectcrtbound))) /\ (exists jt_gap_enumrectcrtboundvalue. jt_gap_enumrectcrtboundvalue+S (jt_value_enumrectcrtbound)=(m*n)))) /\ (((forall jt_index_enumrectcrtleft jt_left_enumrectcrtleft jt_right_enumrectcrtleft. (exists jt_gap_enumrectcrtleftindex. jt_gap_enumrectcrtleftindex+S (jt_index_enumrectcrtleft)=(k)) -> (((exists fs_h_jt_enumrectcrtleftleft. fs_h_jt_enumrectcrtleftleft + S (jt_left_enumrectcrtleft) = S ((S (jt_index_enumrectcrtleft)) * jt_g_enumrect)) /\ exists fs_q_jt_enumrectcrtleftleft. jt_f_enumrect = fs_q_jt_enumrectcrtleftleft * S ((S (jt_index_enumrectcrtleft)) * jt_g_enumrect) + (jt_left_enumrectcrtleft))) -> (((exists fs_h_jt_enumrectcrtleftright. fs_h_jt_enumrectcrtleftright + S (jt_right_enumrectcrtleft) = S ((S (jt_index_enumrectcrtleft)) * jt_c_enumrect)) /\ exists fs_q_jt_enumrectcrtleftright. jt_b_enumrect = fs_q_jt_enumrectcrtleftright * S ((S (jt_index_enumrectcrtleft)) * jt_c_enumrect) + (jt_right_enumrectcrtleft))) -> (exists jt_left_enumrectcrtleftmod jt_right_enumrectcrtleftmod. (jt_left_enumrectcrtleft)+(m)*jt_left_enumrectcrtleftmod=(jt_right_enumrectcrtleft)+(m)*jt_right_enumrectcrtleftmod)) /\ (forall jt_index_enumrectcrtright jt_left_enumrectcrtright jt_right_enumrectcrtright. (exists jt_gap_enumrectcrtrightindex. jt_gap_enumrectcrtrightindex+S (jt_index_enumrectcrtright)=(k)) -> (((exists fs_h_jt_enumrectcrtrightleft. fs_h_jt_enumrectcrtrightleft + S (jt_left_enumrectcrtright) = S ((S (jt_index_enumrectcrtright)) * jt_g_enumrect)) /\ exists fs_q_jt_enumrectcrtrightleft. jt_f_enumrect = fs_q_jt_enumrectcrtrightleft * S ((S (jt_index_enumrectcrtright)) * jt_g_enumrect) + (jt_left_enumrectcrtright))) -> (((exists fs_h_jt_enumrectcrtrightright. fs_h_jt_enumrectcrtrightright + S (jt_right_enumrectcrtright) = S ((S (jt_index_enumrectcrtright)) * jt_e_enumrect)) /\ exists fs_q_jt_enumrectcrtrightright. jt_d_enumrect = fs_q_jt_enumrectcrtrightright * S ((S (jt_index_enumrectcrtright)) * jt_e_enumrect) + (jt_right_enumrectcrtright))) -> (exists jt_left_enumrectcrtrightmod jt_right_enumrectcrtrightmod. (jt_left_enumrectcrtright)+(n)*jt_left_enumrectcrtrightmod=(jt_right_enumrectcrtright)+(n)*jt_right_enumrectcrtrightmod)))))) /\ (forall jt_divisor_enumrectprimitive. (exists jt_factor_enumrectprimitivemodulus. (m*n)=(jt_divisor_enumrectprimitive)*jt_factor_enumrectprimitivemodulus) -> (forall jt_index_enumrectprimitivecoordinates jt_value_enumrectprimitivecoordinates. (exists jt_gap_enumrectprimitivecoordinatesindex. jt_gap_enumrectprimitivecoordinatesindex+S (jt_index_enumrectprimitivecoordinates)=(k)) -> (((exists fs_h_jt_enumrectprimitivecoordinatesat. fs_h_jt_enumrectprimitivecoordinatesat + S (jt_value_enumrectprimitivecoordinates) = S ((S (jt_index_enumrectprimitivecoordinates)) * jt_g_enumrect)) /\ exists fs_q_jt_enumrectprimitivecoordinatesat. jt_f_enumrect = fs_q_jt_enumrectprimitivecoordinatesat * S ((S (jt_index_enumrectprimitivecoordinates)) * jt_g_enumrect) + (jt_value_enumrectprimitivecoordinates))) -> (exists jt_factor_enumrectprimitivecoordinatesdivides. (jt_value_enumrectprimitivecoordinates)=(jt_divisor_enumrectprimitive)*jt_factor_enumrectprimitivecoordinatesdivides)) -> jt_divisor_enumrectprimitive=1))))))))))))))) -> (exists jt_gap_distinctp. jt_gap_distinctp+S (p)=(u*v)) -> (exists jt_gap_distinctz. jt_gap_distinctz+S (z)=(u*v)) -> (((((exists fs_h_jt_distinctentrypcode. fs_h_jt_distinctentrypcode + S (f) = S ((S (p)) * Q)) /\ exists fs_q_jt_distinctentrypcode. P = fs_q_jt_distinctentrypcode * S ((S (p)) * Q) + (f))) /\ (((exists fs_h_jt_distinctentrypscale. fs_h_jt_distinctentrypscale + S (g) = S ((S (p)) * T)) /\ exists fs_q_jt_distinctentrypscale. R = fs_q_jt_distinctentrypscale * S ((S (p)) * T) + (g))))) -> (((((exists fs_h_jt_distinctentryzcode. fs_h_jt_distinctentryzcode + S (h) = S ((S (z)) * Q)) /\ exists fs_q_jt_distinctentryzcode. P = fs_q_jt_distinctentryzcode * S ((S (z)) * Q) + (h))) /\ (((exists fs_h_jt_distinctentryzscale. fs_h_jt_distinctentryzscale + S (s) = S ((S (z)) * T)) /\ exists fs_q_jt_distinctentryzscale. R = fs_q_jt_distinctentryzscale * S ((S (z)) * T) + (s))))) -> (forall jt_index_distinctoutputs jt_left_distinctoutputs jt_right_distinctoutputs. (exists jt_gap_distinctoutputsindex. jt_gap_distinctoutputsindex+S (jt_index_distinctoutputs)=(k)) -> (((exists fs_h_jt_distinctoutputsleft. fs_h_jt_distinctoutputsleft + S (jt_left_distinctoutputs) = S ((S (jt_index_distinctoutputs)) * g)) /\ exists fs_q_jt_distinctoutputsleft. f = fs_q_jt_distinctoutputsleft * S ((S (jt_index_distinctoutputs)) * g) + (jt_left_distinctoutputs))) -> (((exists fs_h_jt_distinctoutputsright. fs_h_jt_distinctoutputsright + S (jt_right_distinctoutputs) = S ((S (jt_index_distinctoutputs)) * s)) /\ exists fs_q_jt_distinctoutputsright. h = fs_q_jt_distinctoutputsright * S ((S (jt_index_distinctoutputs)) * s) + (jt_right_distinctoutputs))) -> jt_left_distinctoutputs=jt_right_distinctoutputs) -> p=zConstructive proof overview
Generated structural guide
Equal decoded CRT output tuples recover equal source positions and hence the same flat index.
The unchanged tactic script uses 4 declared prerequisites and contains 265 exact native proof lines.
Alpha v35 checked-use · first admitted v35 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
JT0043 jordan_rectangle_crt_actual_entry JT003D jordan_enumeration_actual_value JT003B jordan_crt_component_recovery JT003F jordan_enumeration_distinctDirect 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 (4)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–20
03Fix variables and assumptionsL21–30
04Fix variables and assumptionsL31–31
Work with arbitrary variables or the premises of the current implication.
- L31
intro hsame
05Establish haL32–41
Establish this local claim before using it. It is not an additional assumption.
- L32
have ha : ∃ i. ∃ j. ∃ b. ∃ c. ∃ d. ∃ e. Lt(i,u) ∧ (Lt(j,v) ∧ (p = v · i + j ∧ (BetaAt(A,B,i,b) ∧ BetaAt(C,D,i,c) ∧ (BetaAt(E,F,j,d) ∧ BetaAt(G,H,j,e) ∧ (BetaAt(P,Q,p,f) ∧ BetaAt(R,T,p,g) ∧ (JordanCanonicalTupleCRT(m,n,b,c,d,e,f,g,k) ∧ JordanPrimitiveTuple(m · n,f,g,k)))))))Definitions: JordanPrimitiveTupleJordanCanonicalTupleCRTLtBetaAt - L33
specialize jordan_rectangle_crt_actual_entry (m) - L34
specialize jordan_rectangle_crt_actual_entry (n) - L35
specialize jordan_rectangle_crt_actual_entry (k) - L36
specialize jordan_rectangle_crt_actual_entry (A) - L37
specialize jordan_rectangle_crt_actual_entry (B) - L38
specialize jordan_rectangle_crt_actual_entry (C) - L39
specialize jordan_rectangle_crt_actual_entry (D) - L40
specialize jordan_rectangle_crt_actual_entry (u) - L41
specialize jordan_rectangle_crt_actual_entry (E)
06Use earlier factsL42–51
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L42
specialize jordan_rectangle_crt_actual_entry (F) - L43
specialize jordan_rectangle_crt_actual_entry (G) - L44
specialize jordan_rectangle_crt_actual_entry (H) - L45
specialize jordan_rectangle_crt_actual_entry (v) - L46
specialize jordan_rectangle_crt_actual_entry (P) - L47
specialize jordan_rectangle_crt_actual_entry (Q) - L48
specialize jordan_rectangle_crt_actual_entry (R) - L49
specialize jordan_rectangle_crt_actual_entry (T) - L50
specialize jordan_rectangle_crt_actual_entry (u*v) - L51
specialize jordan_rectangle_crt_actual_entry (p)
07Use earlier factsL52–57
08Separate the logical casesL58–67
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L58
cases ha - L59
cases ha_witness - L60
cases ha_witness_witness - L61
cases ha_witness_witness_witness - L62
cases ha_witness_witness_witness_witness - L63
cases ha_witness_witness_witness_witness_witness - L64
cases ha_witness_witness_witness_witness_witness_witness - L65
cases ha_witness_witness_witness_witness_witness_witness_right - L66
cases ha_witness_witness_witness_witness_witness_witness_right_right - L67
cases ha_witness_witness_witness_witness_witness_witness_right_right_right
09Separate the logical casesL68–70
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
10Establish hacrtL71–72
Establish this local claim before using it. It is not an additional assumption.
- L71
have hacrt : JordanCanonicalTupleCRT(m,n,x2,x3,x4,x5,f,g,k)Definitions: JordanCanonicalTupleCRT - L72
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right_left
11Separate the logical casesL73–74
12Establish hbL75–84
Establish this local claim before using it. It is not an additional assumption.
- L75
have hb : ∃ i. ∃ j. ∃ b. ∃ c. ∃ d. ∃ e. Lt(i,u) ∧ (Lt(j,v) ∧ (z = v · i + j ∧ (BetaAt(A,B,i,b) ∧ BetaAt(C,D,i,c) ∧ (BetaAt(E,F,j,d) ∧ BetaAt(G,H,j,e) ∧ (BetaAt(P,Q,z,h) ∧ BetaAt(R,T,z,s) ∧ (JordanCanonicalTupleCRT(m,n,b,c,d,e,h,s,k) ∧ JordanPrimitiveTuple(m · n,h,s,k)))))))Definitions: JordanPrimitiveTupleJordanCanonicalTupleCRTLtBetaAt - L76
specialize jordan_rectangle_crt_actual_entry (m) - L77
specialize jordan_rectangle_crt_actual_entry (n) - L78
specialize jordan_rectangle_crt_actual_entry (k) - L79
specialize jordan_rectangle_crt_actual_entry (A) - L80
specialize jordan_rectangle_crt_actual_entry (B) - L81
specialize jordan_rectangle_crt_actual_entry (C) - L82
specialize jordan_rectangle_crt_actual_entry (D) - L83
specialize jordan_rectangle_crt_actual_entry (u) - L84
specialize jordan_rectangle_crt_actual_entry (E)
13Use earlier factsL85–94
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L85
specialize jordan_rectangle_crt_actual_entry (F) - L86
specialize jordan_rectangle_crt_actual_entry (G) - L87
specialize jordan_rectangle_crt_actual_entry (H) - L88
specialize jordan_rectangle_crt_actual_entry (v) - L89
specialize jordan_rectangle_crt_actual_entry (P) - L90
specialize jordan_rectangle_crt_actual_entry (Q) - L91
specialize jordan_rectangle_crt_actual_entry (R) - L92
specialize jordan_rectangle_crt_actual_entry (T) - L93
specialize jordan_rectangle_crt_actual_entry (u*v) - L94
specialize jordan_rectangle_crt_actual_entry (z)
14Use earlier factsL95–100
15Separate the logical casesL101–110
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L101
cases hb - L102
cases hb_witness - L103
cases hb_witness_witness - L104
cases hb_witness_witness_witness - L105
cases hb_witness_witness_witness_witness - L106
cases hb_witness_witness_witness_witness_witness - L107
cases hb_witness_witness_witness_witness_witness_witness - L108
cases hb_witness_witness_witness_witness_witness_witness_right - L109
cases hb_witness_witness_witness_witness_witness_witness_right_right - L110
cases hb_witness_witness_witness_witness_witness_witness_right_right_right
16Separate the logical casesL111–113
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
17Establish hbcrtL114–115
Establish this local claim before using it. It is not an additional assumption.
- L114
have hbcrt : JordanCanonicalTupleCRT(m,n,x8,x9,x10,x11,h,s,k)Definitions: JordanCanonicalTupleCRT - L115
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right_left
18Separate the logical casesL116–117
19Establish left0L118–127
Establish this local claim before using it. It is not an additional assumption.
- L118
have left0 : BetaPrefixInto(x2,x3,k,m) ∧ JordanPrimitiveTuple(m,x2,x3,k)Definitions: BetaPrefixIntoJordanPrimitiveTuple - L119
specialize jordan_enumeration_actual_value (k) - L120
specialize jordan_enumeration_actual_value (m) - L121
specialize jordan_enumeration_actual_value (A) - L122
specialize jordan_enumeration_actual_value (B) - L123
specialize jordan_enumeration_actual_value (C) - L124
specialize jordan_enumeration_actual_value (D) - L125
specialize jordan_enumeration_actual_value (u) - L126
specialize jordan_enumeration_actual_value (x) - L127
specialize jordan_enumeration_actual_value (x2)
20Use earlier factsL128–132
Instantiate or apply named facts and discharge the corresponding proof obligations.
21Separate the logical casesL133–133
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L133
cases left0
22Establish left1L134–143
Establish this local claim before using it. It is not an additional assumption.
- L134
have left1 : BetaPrefixInto(x8,x9,k,m) ∧ JordanPrimitiveTuple(m,x8,x9,k)Definitions: BetaPrefixIntoJordanPrimitiveTuple - L135
specialize jordan_enumeration_actual_value (k) - L136
specialize jordan_enumeration_actual_value (m) - L137
specialize jordan_enumeration_actual_value (A) - L138
specialize jordan_enumeration_actual_value (B) - L139
specialize jordan_enumeration_actual_value (C) - L140
specialize jordan_enumeration_actual_value (D) - L141
specialize jordan_enumeration_actual_value (u) - L142
specialize jordan_enumeration_actual_value (x6) - L143
specialize jordan_enumeration_actual_value (x8)
23Use earlier factsL144–148
Instantiate or apply named facts and discharge the corresponding proof obligations.
24Separate the logical casesL149–149
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L149
cases left1
25Establish leftsameL150–159
Establish this local claim before using it. It is not an additional assumption.
- L150
have leftsame : IntegerVectorZero(x2,x3,x8,x9,k)Definitions: IntegerVectorZero - L151
specialize jordan_crt_component_recovery (m) - L152
specialize jordan_crt_component_recovery (x2) - L153
specialize jordan_crt_component_recovery (x3) - L154
specialize jordan_crt_component_recovery (x8) - L155
specialize jordan_crt_component_recovery (x9) - L156
specialize jordan_crt_component_recovery (f) - L157
specialize jordan_crt_component_recovery (g) - L158
specialize jordan_crt_component_recovery (h) - L159
specialize jordan_crt_component_recovery (s)
26Use earlier factsL160–166
27Establish leftindexL167–176
Establish this local claim before using it. It is not an additional assumption.
- L167
have leftindex : x=x6 - L168
specialize jordan_enumeration_distinct (k) - L169
specialize jordan_enumeration_distinct (m) - L170
specialize jordan_enumeration_distinct (A) - L171
specialize jordan_enumeration_distinct (B) - L172
specialize jordan_enumeration_distinct (C) - L173
specialize jordan_enumeration_distinct (D) - L174
specialize jordan_enumeration_distinct (u) - L175
specialize jordan_enumeration_distinct (x) - L176
specialize jordan_enumeration_distinct (x6)
28Use earlier factsL177–186
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L177
specialize jordan_enumeration_distinct (x2) - L178
specialize jordan_enumeration_distinct (x3) - L179
specialize jordan_enumeration_distinct (x8) - L180
specialize jordan_enumeration_distinct (x9) - L181
apply jordan_enumeration_distinct - L182
exact hl - L183
exact ha_witness_witness_witness_witness_witness_witness_left - L184
exact hb_witness_witness_witness_witness_witness_witness_left - L185
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_left - L186
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_left
29Use earlier factsL187–187
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L187
exact leftsame
30Establish right0L188–197
Establish this local claim before using it. It is not an additional assumption.
- L188
have right0 : BetaPrefixInto(x4,x5,k,n) ∧ JordanPrimitiveTuple(n,x4,x5,k)Definitions: BetaPrefixIntoJordanPrimitiveTuple - L189
specialize jordan_enumeration_actual_value (k) - L190
specialize jordan_enumeration_actual_value (n) - L191
specialize jordan_enumeration_actual_value (E) - L192
specialize jordan_enumeration_actual_value (F) - L193
specialize jordan_enumeration_actual_value (G) - L194
specialize jordan_enumeration_actual_value (H) - L195
specialize jordan_enumeration_actual_value (v) - L196
specialize jordan_enumeration_actual_value (x1) - L197
specialize jordan_enumeration_actual_value (x4)
31Use earlier factsL198–202
Instantiate or apply named facts and discharge the corresponding proof obligations.
32Separate the logical casesL203–203
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L203
cases right0
33Establish right1L204–213
Establish this local claim before using it. It is not an additional assumption.
- L204
have right1 : BetaPrefixInto(x10,x11,k,n) ∧ JordanPrimitiveTuple(n,x10,x11,k)Definitions: BetaPrefixIntoJordanPrimitiveTuple - L205
specialize jordan_enumeration_actual_value (k) - L206
specialize jordan_enumeration_actual_value (n) - L207
specialize jordan_enumeration_actual_value (E) - L208
specialize jordan_enumeration_actual_value (F) - L209
specialize jordan_enumeration_actual_value (G) - L210
specialize jordan_enumeration_actual_value (H) - L211
specialize jordan_enumeration_actual_value (v) - L212
specialize jordan_enumeration_actual_value (x7) - L213
specialize jordan_enumeration_actual_value (x10)
34Use earlier factsL214–218
Instantiate or apply named facts and discharge the corresponding proof obligations.
35Separate the logical casesL219–219
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L219
cases right1
36Establish rightsameL220–229
Establish this local claim before using it. It is not an additional assumption.
- L220
have rightsame : IntegerVectorZero(x4,x5,x10,x11,k)Definitions: IntegerVectorZero - L221
specialize jordan_crt_component_recovery (n) - L222
specialize jordan_crt_component_recovery (x4) - L223
specialize jordan_crt_component_recovery (x5) - L224
specialize jordan_crt_component_recovery (x10) - L225
specialize jordan_crt_component_recovery (x11) - L226
specialize jordan_crt_component_recovery (f) - L227
specialize jordan_crt_component_recovery (g) - L228
specialize jordan_crt_component_recovery (h) - L229
specialize jordan_crt_component_recovery (s)
37Use earlier factsL230–236
38Establish rightindexL237–246
Establish this local claim before using it. It is not an additional assumption.
- L237
have rightindex : x1=x7 - L238
specialize jordan_enumeration_distinct (k) - L239
specialize jordan_enumeration_distinct (n) - L240
specialize jordan_enumeration_distinct (E) - L241
specialize jordan_enumeration_distinct (F) - L242
specialize jordan_enumeration_distinct (G) - L243
specialize jordan_enumeration_distinct (H) - L244
specialize jordan_enumeration_distinct (v) - L245
specialize jordan_enumeration_distinct (x1) - L246
specialize jordan_enumeration_distinct (x7)
39Use earlier factsL247–256
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L247
specialize jordan_enumeration_distinct (x4) - L248
specialize jordan_enumeration_distinct (x5) - L249
specialize jordan_enumeration_distinct (x10) - L250
specialize jordan_enumeration_distinct (x11) - L251
apply jordan_enumeration_distinct - L252
exact hh - L253
exact ha_witness_witness_witness_witness_witness_witness_right_left - L254
exact hb_witness_witness_witness_witness_witness_witness_right_left - L255
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_right_left - L256
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_right_left
40Use earlier factsL257–257
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L257
exact rightsame
41Establish hposL258–265
Establish this local claim before using it. It is not an additional assumption.
Original exact command ledger · 265 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 P - 0015
intro Q - 0016
intro R - 0017
intro T - 0018
intro p - 0019
intro z - 0020
intro f - 0021
intro g - 0022
intro h - 0023
intro s - 0024
intro hl - 0025
intro hh - 0026
intro hr - 0027
intro hp - 0028
intro hz - 0029
intro he - 0030
intro hf - 0031
intro hsame - 0032
have ha : exists i j b c d e. ((exists jt_gap_havaluerow. jt_gap_havaluerow+S (i)=(u)) /\ (((exists jt_gap_havaluecolumn. jt_gap_havaluecolumn+S (j)=(v)) /\ (((p=(v)*(i)+(j)) /\ (((((((exists fs_h_jt_havalueleftcode. fs_h_jt_havalueleftcode + S (b) = S ((S (i)) * B)) /\ exists fs_q_jt_havalueleftcode. A = fs_q_jt_havalueleftcode * S ((S (i)) * B) + (b))) /\ (((exists fs_h_jt_havalueleftscale. fs_h_jt_havalueleftscale + S (c) = S ((S (i)) * D)) /\ exists fs_q_jt_havalueleftscale. C = fs_q_jt_havalueleftscale * S ((S (i)) * D) + (c))))) /\ (((((((exists fs_h_jt_havaluerightcode. fs_h_jt_havaluerightcode + S (d) = S ((S (j)) * F)) /\ exists fs_q_jt_havaluerightcode. E = fs_q_jt_havaluerightcode * S ((S (j)) * F) + (d))) /\ (((exists fs_h_jt_havaluerightscale. fs_h_jt_havaluerightscale + S (e) = S ((S (j)) * H)) /\ exists fs_q_jt_havaluerightscale. G = fs_q_jt_havaluerightscale * S ((S (j)) * H) + (e))))) /\ (((((((exists fs_h_jt_havalueoutputcode. fs_h_jt_havalueoutputcode + S (f) = S ((S (p)) * Q)) /\ exists fs_q_jt_havalueoutputcode. P = fs_q_jt_havalueoutputcode * S ((S (p)) * Q) + (f))) /\ (((exists fs_h_jt_havalueoutputscale. fs_h_jt_havalueoutputscale + S (g) = S ((S (p)) * T)) /\ exists fs_q_jt_havalueoutputscale. R = fs_q_jt_havalueoutputscale * S ((S (p)) * T) + (g))))) /\ (((((forall jt_index_havaluecrtbound. (exists jt_gap_havaluecrtboundindex. jt_gap_havaluecrtboundindex+S (jt_index_havaluecrtbound)=(k)) -> exists jt_value_havaluecrtbound. ((((exists fs_h_jt_havaluecrtboundat. fs_h_jt_havaluecrtboundat + S (jt_value_havaluecrtbound) = S ((S (jt_index_havaluecrtbound)) * g)) /\ exists fs_q_jt_havaluecrtboundat. f = fs_q_jt_havaluecrtboundat * S ((S (jt_index_havaluecrtbound)) * g) + (jt_value_havaluecrtbound))) /\ (exists jt_gap_havaluecrtboundvalue. jt_gap_havaluecrtboundvalue+S (jt_value_havaluecrtbound)=(m*n)))) /\ (((forall jt_index_havaluecrtleft jt_left_havaluecrtleft jt_right_havaluecrtleft. (exists jt_gap_havaluecrtleftindex. jt_gap_havaluecrtleftindex+S (jt_index_havaluecrtleft)=(k)) -> (((exists fs_h_jt_havaluecrtleftleft. fs_h_jt_havaluecrtleftleft + S (jt_left_havaluecrtleft) = S ((S (jt_index_havaluecrtleft)) * g)) /\ exists fs_q_jt_havaluecrtleftleft. f = fs_q_jt_havaluecrtleftleft * S ((S (jt_index_havaluecrtleft)) * g) + (jt_left_havaluecrtleft))) -> (((exists fs_h_jt_havaluecrtleftright. fs_h_jt_havaluecrtleftright + S (jt_right_havaluecrtleft) = S ((S (jt_index_havaluecrtleft)) * c)) /\ exists fs_q_jt_havaluecrtleftright. b = fs_q_jt_havaluecrtleftright * S ((S (jt_index_havaluecrtleft)) * c) + (jt_right_havaluecrtleft))) -> (exists jt_left_havaluecrtleftmod jt_right_havaluecrtleftmod. (jt_left_havaluecrtleft)+(m)*jt_left_havaluecrtleftmod=(jt_right_havaluecrtleft)+(m)*jt_right_havaluecrtleftmod)) /\ (forall jt_index_havaluecrtright jt_left_havaluecrtright jt_right_havaluecrtright. (exists jt_gap_havaluecrtrightindex. jt_gap_havaluecrtrightindex+S (jt_index_havaluecrtright)=(k)) -> (((exists fs_h_jt_havaluecrtrightleft. fs_h_jt_havaluecrtrightleft + S (jt_left_havaluecrtright) = S ((S (jt_index_havaluecrtright)) * g)) /\ exists fs_q_jt_havaluecrtrightleft. f = fs_q_jt_havaluecrtrightleft * S ((S (jt_index_havaluecrtright)) * g) + (jt_left_havaluecrtright))) -> (((exists fs_h_jt_havaluecrtrightright. fs_h_jt_havaluecrtrightright + S (jt_right_havaluecrtright) = S ((S (jt_index_havaluecrtright)) * e)) /\ exists fs_q_jt_havaluecrtrightright. d = fs_q_jt_havaluecrtrightright * S ((S (jt_index_havaluecrtright)) * e) + (jt_right_havaluecrtright))) -> (exists jt_left_havaluecrtrightmod jt_right_havaluecrtrightmod. (jt_left_havaluecrtright)+(n)*jt_left_havaluecrtrightmod=(jt_right_havaluecrtright)+(n)*jt_right_havaluecrtrightmod)))))) /\ (forall jt_divisor_havalueprimitive. (exists jt_factor_havalueprimitivemodulus. (m*n)=(jt_divisor_havalueprimitive)*jt_factor_havalueprimitivemodulus) -> (forall jt_index_havalueprimitivecoordinates jt_value_havalueprimitivecoordinates. (exists jt_gap_havalueprimitivecoordinatesindex. jt_gap_havalueprimitivecoordinatesindex+S (jt_index_havalueprimitivecoordinates)=(k)) -> (((exists fs_h_jt_havalueprimitivecoordinatesat. fs_h_jt_havalueprimitivecoordinatesat + S (jt_value_havalueprimitivecoordinates) = S ((S (jt_index_havalueprimitivecoordinates)) * g)) /\ exists fs_q_jt_havalueprimitivecoordinatesat. f = fs_q_jt_havalueprimitivecoordinatesat * S ((S (jt_index_havalueprimitivecoordinates)) * g) + (jt_value_havalueprimitivecoordinates))) -> (exists jt_factor_havalueprimitivecoordinatesdivides. (jt_value_havalueprimitivecoordinates)=(jt_divisor_havalueprimitive)*jt_factor_havalueprimitivecoordinatesdivides)) -> jt_divisor_havalueprimitive=1)))))))))))))) - 0033
specialize jordan_rectangle_crt_actual_entry (m) - 0034
specialize jordan_rectangle_crt_actual_entry (n) - 0035
specialize jordan_rectangle_crt_actual_entry (k) - 0036
specialize jordan_rectangle_crt_actual_entry (A) - 0037
specialize jordan_rectangle_crt_actual_entry (B) - 0038
specialize jordan_rectangle_crt_actual_entry (C) - 0039
specialize jordan_rectangle_crt_actual_entry (D) - 0040
specialize jordan_rectangle_crt_actual_entry (u) - 0041
specialize jordan_rectangle_crt_actual_entry (E) - 0042
specialize jordan_rectangle_crt_actual_entry (F) - 0043
specialize jordan_rectangle_crt_actual_entry (G) - 0044
specialize jordan_rectangle_crt_actual_entry (H) - 0045
specialize jordan_rectangle_crt_actual_entry (v) - 0046
specialize jordan_rectangle_crt_actual_entry (P) - 0047
specialize jordan_rectangle_crt_actual_entry (Q) - 0048
specialize jordan_rectangle_crt_actual_entry (R) - 0049
specialize jordan_rectangle_crt_actual_entry (T) - 0050
specialize jordan_rectangle_crt_actual_entry (u*v) - 0051
specialize jordan_rectangle_crt_actual_entry (p) - 0052
specialize jordan_rectangle_crt_actual_entry (f) - 0053
specialize jordan_rectangle_crt_actual_entry (g) - 0054
apply jordan_rectangle_crt_actual_entry - 0055
exact hr - 0056
exact hp - 0057
exact he - 0058
cases ha - 0059
cases ha_witness - 0060
cases ha_witness_witness - 0061
cases ha_witness_witness_witness - 0062
cases ha_witness_witness_witness_witness - 0063
cases ha_witness_witness_witness_witness_witness - 0064
cases ha_witness_witness_witness_witness_witness_witness - 0065
cases ha_witness_witness_witness_witness_witness_witness_right - 0066
cases ha_witness_witness_witness_witness_witness_witness_right_right - 0067
cases ha_witness_witness_witness_witness_witness_witness_right_right_right - 0068
cases ha_witness_witness_witness_witness_witness_witness_right_right_right_right - 0069
cases ha_witness_witness_witness_witness_witness_witness_right_right_right_right_right - 0070
cases ha_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right - 0071
have hacrt : ((forall jt_index_hacrtbound. (exists jt_gap_hacrtboundindex. jt_gap_hacrtboundindex+S (jt_index_hacrtbound)=(k)) -> exists jt_value_hacrtbound. ((((exists fs_h_jt_hacrtboundat. fs_h_jt_hacrtboundat + S (jt_value_hacrtbound) = S ((S (jt_index_hacrtbound)) * g)) /\ exists fs_q_jt_hacrtboundat. f = fs_q_jt_hacrtboundat * S ((S (jt_index_hacrtbound)) * g) + (jt_value_hacrtbound))) /\ (exists jt_gap_hacrtboundvalue. jt_gap_hacrtboundvalue+S (jt_value_hacrtbound)=(m*n)))) /\ (((forall jt_index_hacrtleft jt_left_hacrtleft jt_right_hacrtleft. (exists jt_gap_hacrtleftindex. jt_gap_hacrtleftindex+S (jt_index_hacrtleft)=(k)) -> (((exists fs_h_jt_hacrtleftleft. fs_h_jt_hacrtleftleft + S (jt_left_hacrtleft) = S ((S (jt_index_hacrtleft)) * g)) /\ exists fs_q_jt_hacrtleftleft. f = fs_q_jt_hacrtleftleft * S ((S (jt_index_hacrtleft)) * g) + (jt_left_hacrtleft))) -> (((exists fs_h_jt_hacrtleftright. fs_h_jt_hacrtleftright + S (jt_right_hacrtleft) = S ((S (jt_index_hacrtleft)) * x3)) /\ exists fs_q_jt_hacrtleftright. x2 = fs_q_jt_hacrtleftright * S ((S (jt_index_hacrtleft)) * x3) + (jt_right_hacrtleft))) -> (exists jt_left_hacrtleftmod jt_right_hacrtleftmod. (jt_left_hacrtleft)+(m)*jt_left_hacrtleftmod=(jt_right_hacrtleft)+(m)*jt_right_hacrtleftmod)) /\ (forall jt_index_hacrtright jt_left_hacrtright jt_right_hacrtright. (exists jt_gap_hacrtrightindex. jt_gap_hacrtrightindex+S (jt_index_hacrtright)=(k)) -> (((exists fs_h_jt_hacrtrightleft. fs_h_jt_hacrtrightleft + S (jt_left_hacrtright) = S ((S (jt_index_hacrtright)) * g)) /\ exists fs_q_jt_hacrtrightleft. f = fs_q_jt_hacrtrightleft * S ((S (jt_index_hacrtright)) * g) + (jt_left_hacrtright))) -> (((exists fs_h_jt_hacrtrightright. fs_h_jt_hacrtrightright + S (jt_right_hacrtright) = S ((S (jt_index_hacrtright)) * x5)) /\ exists fs_q_jt_hacrtrightright. x4 = fs_q_jt_hacrtrightright * S ((S (jt_index_hacrtright)) * x5) + (jt_right_hacrtright))) -> (exists jt_left_hacrtrightmod jt_right_hacrtrightmod. (jt_left_hacrtright)+(n)*jt_left_hacrtrightmod=(jt_right_hacrtright)+(n)*jt_right_hacrtrightmod))))) - 0072
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right_left - 0073
cases hacrt - 0074
cases hacrt_right - 0075
have hb : exists i j b c d e. ((exists jt_gap_hbvaluerow. jt_gap_hbvaluerow+S (i)=(u)) /\ (((exists jt_gap_hbvaluecolumn. jt_gap_hbvaluecolumn+S (j)=(v)) /\ (((z=(v)*(i)+(j)) /\ (((((((exists fs_h_jt_hbvalueleftcode. fs_h_jt_hbvalueleftcode + S (b) = S ((S (i)) * B)) /\ exists fs_q_jt_hbvalueleftcode. A = fs_q_jt_hbvalueleftcode * S ((S (i)) * B) + (b))) /\ (((exists fs_h_jt_hbvalueleftscale. fs_h_jt_hbvalueleftscale + S (c) = S ((S (i)) * D)) /\ exists fs_q_jt_hbvalueleftscale. C = fs_q_jt_hbvalueleftscale * S ((S (i)) * D) + (c))))) /\ (((((((exists fs_h_jt_hbvaluerightcode. fs_h_jt_hbvaluerightcode + S (d) = S ((S (j)) * F)) /\ exists fs_q_jt_hbvaluerightcode. E = fs_q_jt_hbvaluerightcode * S ((S (j)) * F) + (d))) /\ (((exists fs_h_jt_hbvaluerightscale. fs_h_jt_hbvaluerightscale + S (e) = S ((S (j)) * H)) /\ exists fs_q_jt_hbvaluerightscale. G = fs_q_jt_hbvaluerightscale * S ((S (j)) * H) + (e))))) /\ (((((((exists fs_h_jt_hbvalueoutputcode. fs_h_jt_hbvalueoutputcode + S (h) = S ((S (z)) * Q)) /\ exists fs_q_jt_hbvalueoutputcode. P = fs_q_jt_hbvalueoutputcode * S ((S (z)) * Q) + (h))) /\ (((exists fs_h_jt_hbvalueoutputscale. fs_h_jt_hbvalueoutputscale + S (s) = S ((S (z)) * T)) /\ exists fs_q_jt_hbvalueoutputscale. R = fs_q_jt_hbvalueoutputscale * S ((S (z)) * T) + (s))))) /\ (((((forall jt_index_hbvaluecrtbound. (exists jt_gap_hbvaluecrtboundindex. jt_gap_hbvaluecrtboundindex+S (jt_index_hbvaluecrtbound)=(k)) -> exists jt_value_hbvaluecrtbound. ((((exists fs_h_jt_hbvaluecrtboundat. fs_h_jt_hbvaluecrtboundat + S (jt_value_hbvaluecrtbound) = S ((S (jt_index_hbvaluecrtbound)) * s)) /\ exists fs_q_jt_hbvaluecrtboundat. h = fs_q_jt_hbvaluecrtboundat * S ((S (jt_index_hbvaluecrtbound)) * s) + (jt_value_hbvaluecrtbound))) /\ (exists jt_gap_hbvaluecrtboundvalue. jt_gap_hbvaluecrtboundvalue+S (jt_value_hbvaluecrtbound)=(m*n)))) /\ (((forall jt_index_hbvaluecrtleft jt_left_hbvaluecrtleft jt_right_hbvaluecrtleft. (exists jt_gap_hbvaluecrtleftindex. jt_gap_hbvaluecrtleftindex+S (jt_index_hbvaluecrtleft)=(k)) -> (((exists fs_h_jt_hbvaluecrtleftleft. fs_h_jt_hbvaluecrtleftleft + S (jt_left_hbvaluecrtleft) = S ((S (jt_index_hbvaluecrtleft)) * s)) /\ exists fs_q_jt_hbvaluecrtleftleft. h = fs_q_jt_hbvaluecrtleftleft * S ((S (jt_index_hbvaluecrtleft)) * s) + (jt_left_hbvaluecrtleft))) -> (((exists fs_h_jt_hbvaluecrtleftright. fs_h_jt_hbvaluecrtleftright + S (jt_right_hbvaluecrtleft) = S ((S (jt_index_hbvaluecrtleft)) * c)) /\ exists fs_q_jt_hbvaluecrtleftright. b = fs_q_jt_hbvaluecrtleftright * S ((S (jt_index_hbvaluecrtleft)) * c) + (jt_right_hbvaluecrtleft))) -> (exists jt_left_hbvaluecrtleftmod jt_right_hbvaluecrtleftmod. (jt_left_hbvaluecrtleft)+(m)*jt_left_hbvaluecrtleftmod=(jt_right_hbvaluecrtleft)+(m)*jt_right_hbvaluecrtleftmod)) /\ (forall jt_index_hbvaluecrtright jt_left_hbvaluecrtright jt_right_hbvaluecrtright. (exists jt_gap_hbvaluecrtrightindex. jt_gap_hbvaluecrtrightindex+S (jt_index_hbvaluecrtright)=(k)) -> (((exists fs_h_jt_hbvaluecrtrightleft. fs_h_jt_hbvaluecrtrightleft + S (jt_left_hbvaluecrtright) = S ((S (jt_index_hbvaluecrtright)) * s)) /\ exists fs_q_jt_hbvaluecrtrightleft. h = fs_q_jt_hbvaluecrtrightleft * S ((S (jt_index_hbvaluecrtright)) * s) + (jt_left_hbvaluecrtright))) -> (((exists fs_h_jt_hbvaluecrtrightright. fs_h_jt_hbvaluecrtrightright + S (jt_right_hbvaluecrtright) = S ((S (jt_index_hbvaluecrtright)) * e)) /\ exists fs_q_jt_hbvaluecrtrightright. d = fs_q_jt_hbvaluecrtrightright * S ((S (jt_index_hbvaluecrtright)) * e) + (jt_right_hbvaluecrtright))) -> (exists jt_left_hbvaluecrtrightmod jt_right_hbvaluecrtrightmod. (jt_left_hbvaluecrtright)+(n)*jt_left_hbvaluecrtrightmod=(jt_right_hbvaluecrtright)+(n)*jt_right_hbvaluecrtrightmod)))))) /\ (forall jt_divisor_hbvalueprimitive. (exists jt_factor_hbvalueprimitivemodulus. (m*n)=(jt_divisor_hbvalueprimitive)*jt_factor_hbvalueprimitivemodulus) -> (forall jt_index_hbvalueprimitivecoordinates jt_value_hbvalueprimitivecoordinates. (exists jt_gap_hbvalueprimitivecoordinatesindex. jt_gap_hbvalueprimitivecoordinatesindex+S (jt_index_hbvalueprimitivecoordinates)=(k)) -> (((exists fs_h_jt_hbvalueprimitivecoordinatesat. fs_h_jt_hbvalueprimitivecoordinatesat + S (jt_value_hbvalueprimitivecoordinates) = S ((S (jt_index_hbvalueprimitivecoordinates)) * s)) /\ exists fs_q_jt_hbvalueprimitivecoordinatesat. h = fs_q_jt_hbvalueprimitivecoordinatesat * S ((S (jt_index_hbvalueprimitivecoordinates)) * s) + (jt_value_hbvalueprimitivecoordinates))) -> (exists jt_factor_hbvalueprimitivecoordinatesdivides. (jt_value_hbvalueprimitivecoordinates)=(jt_divisor_hbvalueprimitive)*jt_factor_hbvalueprimitivecoordinatesdivides)) -> jt_divisor_hbvalueprimitive=1)))))))))))))) - 0076
specialize jordan_rectangle_crt_actual_entry (m) - 0077
specialize jordan_rectangle_crt_actual_entry (n) - 0078
specialize jordan_rectangle_crt_actual_entry (k) - 0079
specialize jordan_rectangle_crt_actual_entry (A) - 0080
specialize jordan_rectangle_crt_actual_entry (B) - 0081
specialize jordan_rectangle_crt_actual_entry (C) - 0082
specialize jordan_rectangle_crt_actual_entry (D) - 0083
specialize jordan_rectangle_crt_actual_entry (u) - 0084
specialize jordan_rectangle_crt_actual_entry (E) - 0085
specialize jordan_rectangle_crt_actual_entry (F) - 0086
specialize jordan_rectangle_crt_actual_entry (G) - 0087
specialize jordan_rectangle_crt_actual_entry (H) - 0088
specialize jordan_rectangle_crt_actual_entry (v) - 0089
specialize jordan_rectangle_crt_actual_entry (P) - 0090
specialize jordan_rectangle_crt_actual_entry (Q) - 0091
specialize jordan_rectangle_crt_actual_entry (R) - 0092
specialize jordan_rectangle_crt_actual_entry (T) - 0093
specialize jordan_rectangle_crt_actual_entry (u*v) - 0094
specialize jordan_rectangle_crt_actual_entry (z) - 0095
specialize jordan_rectangle_crt_actual_entry (h) - 0096
specialize jordan_rectangle_crt_actual_entry (s) - 0097
apply jordan_rectangle_crt_actual_entry - 0098
exact hr - 0099
exact hz - 0100
exact hf - 0101
cases hb - 0102
cases hb_witness - 0103
cases hb_witness_witness - 0104
cases hb_witness_witness_witness - 0105
cases hb_witness_witness_witness_witness - 0106
cases hb_witness_witness_witness_witness_witness - 0107
cases hb_witness_witness_witness_witness_witness_witness - 0108
cases hb_witness_witness_witness_witness_witness_witness_right - 0109
cases hb_witness_witness_witness_witness_witness_witness_right_right - 0110
cases hb_witness_witness_witness_witness_witness_witness_right_right_right - 0111
cases hb_witness_witness_witness_witness_witness_witness_right_right_right_right - 0112
cases hb_witness_witness_witness_witness_witness_witness_right_right_right_right_right - 0113
cases hb_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right - 0114
have hbcrt : ((forall jt_index_hbcrtbound. (exists jt_gap_hbcrtboundindex. jt_gap_hbcrtboundindex+S (jt_index_hbcrtbound)=(k)) -> exists jt_value_hbcrtbound. ((((exists fs_h_jt_hbcrtboundat. fs_h_jt_hbcrtboundat + S (jt_value_hbcrtbound) = S ((S (jt_index_hbcrtbound)) * s)) /\ exists fs_q_jt_hbcrtboundat. h = fs_q_jt_hbcrtboundat * S ((S (jt_index_hbcrtbound)) * s) + (jt_value_hbcrtbound))) /\ (exists jt_gap_hbcrtboundvalue. jt_gap_hbcrtboundvalue+S (jt_value_hbcrtbound)=(m*n)))) /\ (((forall jt_index_hbcrtleft jt_left_hbcrtleft jt_right_hbcrtleft. (exists jt_gap_hbcrtleftindex. jt_gap_hbcrtleftindex+S (jt_index_hbcrtleft)=(k)) -> (((exists fs_h_jt_hbcrtleftleft. fs_h_jt_hbcrtleftleft + S (jt_left_hbcrtleft) = S ((S (jt_index_hbcrtleft)) * s)) /\ exists fs_q_jt_hbcrtleftleft. h = fs_q_jt_hbcrtleftleft * S ((S (jt_index_hbcrtleft)) * s) + (jt_left_hbcrtleft))) -> (((exists fs_h_jt_hbcrtleftright. fs_h_jt_hbcrtleftright + S (jt_right_hbcrtleft) = S ((S (jt_index_hbcrtleft)) * x9)) /\ exists fs_q_jt_hbcrtleftright. x8 = fs_q_jt_hbcrtleftright * S ((S (jt_index_hbcrtleft)) * x9) + (jt_right_hbcrtleft))) -> (exists jt_left_hbcrtleftmod jt_right_hbcrtleftmod. (jt_left_hbcrtleft)+(m)*jt_left_hbcrtleftmod=(jt_right_hbcrtleft)+(m)*jt_right_hbcrtleftmod)) /\ (forall jt_index_hbcrtright jt_left_hbcrtright jt_right_hbcrtright. (exists jt_gap_hbcrtrightindex. jt_gap_hbcrtrightindex+S (jt_index_hbcrtright)=(k)) -> (((exists fs_h_jt_hbcrtrightleft. fs_h_jt_hbcrtrightleft + S (jt_left_hbcrtright) = S ((S (jt_index_hbcrtright)) * s)) /\ exists fs_q_jt_hbcrtrightleft. h = fs_q_jt_hbcrtrightleft * S ((S (jt_index_hbcrtright)) * s) + (jt_left_hbcrtright))) -> (((exists fs_h_jt_hbcrtrightright. fs_h_jt_hbcrtrightright + S (jt_right_hbcrtright) = S ((S (jt_index_hbcrtright)) * x11)) /\ exists fs_q_jt_hbcrtrightright. x10 = fs_q_jt_hbcrtrightright * S ((S (jt_index_hbcrtright)) * x11) + (jt_right_hbcrtright))) -> (exists jt_left_hbcrtrightmod jt_right_hbcrtrightmod. (jt_left_hbcrtright)+(n)*jt_left_hbcrtrightmod=(jt_right_hbcrtright)+(n)*jt_right_hbcrtrightmod))))) - 0115
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_right_right_right_left - 0116
cases hbcrt - 0117
cases hbcrt_right - 0118
have left0 : ((forall jt_index_left0bound. (exists jt_gap_left0boundindex. jt_gap_left0boundindex+S (jt_index_left0bound)=(k)) -> exists jt_value_left0bound. ((((exists fs_h_jt_left0boundat. fs_h_jt_left0boundat + S (jt_value_left0bound) = S ((S (jt_index_left0bound)) * x3)) /\ exists fs_q_jt_left0boundat. x2 = fs_q_jt_left0boundat * S ((S (jt_index_left0bound)) * x3) + (jt_value_left0bound))) /\ (exists jt_gap_left0boundvalue. jt_gap_left0boundvalue+S (jt_value_left0bound)=(m)))) /\ (forall jt_divisor_left0primitive. (exists jt_factor_left0primitivemodulus. (m)=(jt_divisor_left0primitive)*jt_factor_left0primitivemodulus) -> (forall jt_index_left0primitivecoordinates jt_value_left0primitivecoordinates. (exists jt_gap_left0primitivecoordinatesindex. jt_gap_left0primitivecoordinatesindex+S (jt_index_left0primitivecoordinates)=(k)) -> (((exists fs_h_jt_left0primitivecoordinatesat. fs_h_jt_left0primitivecoordinatesat + S (jt_value_left0primitivecoordinates) = S ((S (jt_index_left0primitivecoordinates)) * x3)) /\ exists fs_q_jt_left0primitivecoordinatesat. x2 = fs_q_jt_left0primitivecoordinatesat * S ((S (jt_index_left0primitivecoordinates)) * x3) + (jt_value_left0primitivecoordinates))) -> (exists jt_factor_left0primitivecoordinatesdivides. (jt_value_left0primitivecoordinates)=(jt_divisor_left0primitive)*jt_factor_left0primitivecoordinatesdivides)) -> jt_divisor_left0primitive=1)) - 0119
specialize jordan_enumeration_actual_value (k) - 0120
specialize jordan_enumeration_actual_value (m) - 0121
specialize jordan_enumeration_actual_value (A) - 0122
specialize jordan_enumeration_actual_value (B) - 0123
specialize jordan_enumeration_actual_value (C) - 0124
specialize jordan_enumeration_actual_value (D) - 0125
specialize jordan_enumeration_actual_value (u) - 0126
specialize jordan_enumeration_actual_value (x) - 0127
specialize jordan_enumeration_actual_value (x2) - 0128
specialize jordan_enumeration_actual_value (x3) - 0129
apply jordan_enumeration_actual_value - 0130
exact hl - 0131
exact ha_witness_witness_witness_witness_witness_witness_left - 0132
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_left - 0133
cases left0 - 0134
have left1 : ((forall jt_index_left1bound. (exists jt_gap_left1boundindex. jt_gap_left1boundindex+S (jt_index_left1bound)=(k)) -> exists jt_value_left1bound. ((((exists fs_h_jt_left1boundat. fs_h_jt_left1boundat + S (jt_value_left1bound) = S ((S (jt_index_left1bound)) * x9)) /\ exists fs_q_jt_left1boundat. x8 = fs_q_jt_left1boundat * S ((S (jt_index_left1bound)) * x9) + (jt_value_left1bound))) /\ (exists jt_gap_left1boundvalue. jt_gap_left1boundvalue+S (jt_value_left1bound)=(m)))) /\ (forall jt_divisor_left1primitive. (exists jt_factor_left1primitivemodulus. (m)=(jt_divisor_left1primitive)*jt_factor_left1primitivemodulus) -> (forall jt_index_left1primitivecoordinates jt_value_left1primitivecoordinates. (exists jt_gap_left1primitivecoordinatesindex. jt_gap_left1primitivecoordinatesindex+S (jt_index_left1primitivecoordinates)=(k)) -> (((exists fs_h_jt_left1primitivecoordinatesat. fs_h_jt_left1primitivecoordinatesat + S (jt_value_left1primitivecoordinates) = S ((S (jt_index_left1primitivecoordinates)) * x9)) /\ exists fs_q_jt_left1primitivecoordinatesat. x8 = fs_q_jt_left1primitivecoordinatesat * S ((S (jt_index_left1primitivecoordinates)) * x9) + (jt_value_left1primitivecoordinates))) -> (exists jt_factor_left1primitivecoordinatesdivides. (jt_value_left1primitivecoordinates)=(jt_divisor_left1primitive)*jt_factor_left1primitivecoordinatesdivides)) -> jt_divisor_left1primitive=1)) - 0135
specialize jordan_enumeration_actual_value (k) - 0136
specialize jordan_enumeration_actual_value (m) - 0137
specialize jordan_enumeration_actual_value (A) - 0138
specialize jordan_enumeration_actual_value (B) - 0139
specialize jordan_enumeration_actual_value (C) - 0140
specialize jordan_enumeration_actual_value (D) - 0141
specialize jordan_enumeration_actual_value (u) - 0142
specialize jordan_enumeration_actual_value (x6) - 0143
specialize jordan_enumeration_actual_value (x8) - 0144
specialize jordan_enumeration_actual_value (x9) - 0145
apply jordan_enumeration_actual_value - 0146
exact hl - 0147
exact hb_witness_witness_witness_witness_witness_witness_left - 0148
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_left - 0149
cases left1 - 0150
have leftsame : forall jt_index_leftsame jt_left_leftsame jt_right_leftsame. (exists jt_gap_leftsameindex. jt_gap_leftsameindex+S (jt_index_leftsame)=(k)) -> (((exists fs_h_jt_leftsameleft. fs_h_jt_leftsameleft + S (jt_left_leftsame) = S ((S (jt_index_leftsame)) * x3)) /\ exists fs_q_jt_leftsameleft. x2 = fs_q_jt_leftsameleft * S ((S (jt_index_leftsame)) * x3) + (jt_left_leftsame))) -> (((exists fs_h_jt_leftsameright. fs_h_jt_leftsameright + S (jt_right_leftsame) = S ((S (jt_index_leftsame)) * x9)) /\ exists fs_q_jt_leftsameright. x8 = fs_q_jt_leftsameright * S ((S (jt_index_leftsame)) * x9) + (jt_right_leftsame))) -> jt_left_leftsame=jt_right_leftsame - 0151
specialize jordan_crt_component_recovery (m) - 0152
specialize jordan_crt_component_recovery (x2) - 0153
specialize jordan_crt_component_recovery (x3) - 0154
specialize jordan_crt_component_recovery (x8) - 0155
specialize jordan_crt_component_recovery (x9) - 0156
specialize jordan_crt_component_recovery (f) - 0157
specialize jordan_crt_component_recovery (g) - 0158
specialize jordan_crt_component_recovery (h) - 0159
specialize jordan_crt_component_recovery (s) - 0160
specialize jordan_crt_component_recovery (k) - 0161
apply jordan_crt_component_recovery - 0162
exact left0_left - 0163
exact left1_left - 0164
exact hacrt_right_left - 0165
exact hbcrt_right_left - 0166
exact hsame - 0167
have leftindex : x=x6 - 0168
specialize jordan_enumeration_distinct (k) - 0169
specialize jordan_enumeration_distinct (m) - 0170
specialize jordan_enumeration_distinct (A) - 0171
specialize jordan_enumeration_distinct (B) - 0172
specialize jordan_enumeration_distinct (C) - 0173
specialize jordan_enumeration_distinct (D) - 0174
specialize jordan_enumeration_distinct (u) - 0175
specialize jordan_enumeration_distinct (x) - 0176
specialize jordan_enumeration_distinct (x6) - 0177
specialize jordan_enumeration_distinct (x2) - 0178
specialize jordan_enumeration_distinct (x3) - 0179
specialize jordan_enumeration_distinct (x8) - 0180
specialize jordan_enumeration_distinct (x9) - 0181
apply jordan_enumeration_distinct - 0182
exact hl - 0183
exact ha_witness_witness_witness_witness_witness_witness_left - 0184
exact hb_witness_witness_witness_witness_witness_witness_left - 0185
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_left - 0186
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_left - 0187
exact leftsame - 0188
have right0 : ((forall jt_index_right0bound. (exists jt_gap_right0boundindex. jt_gap_right0boundindex+S (jt_index_right0bound)=(k)) -> exists jt_value_right0bound. ((((exists fs_h_jt_right0boundat. fs_h_jt_right0boundat + S (jt_value_right0bound) = S ((S (jt_index_right0bound)) * x5)) /\ exists fs_q_jt_right0boundat. x4 = fs_q_jt_right0boundat * S ((S (jt_index_right0bound)) * x5) + (jt_value_right0bound))) /\ (exists jt_gap_right0boundvalue. jt_gap_right0boundvalue+S (jt_value_right0bound)=(n)))) /\ (forall jt_divisor_right0primitive. (exists jt_factor_right0primitivemodulus. (n)=(jt_divisor_right0primitive)*jt_factor_right0primitivemodulus) -> (forall jt_index_right0primitivecoordinates jt_value_right0primitivecoordinates. (exists jt_gap_right0primitivecoordinatesindex. jt_gap_right0primitivecoordinatesindex+S (jt_index_right0primitivecoordinates)=(k)) -> (((exists fs_h_jt_right0primitivecoordinatesat. fs_h_jt_right0primitivecoordinatesat + S (jt_value_right0primitivecoordinates) = S ((S (jt_index_right0primitivecoordinates)) * x5)) /\ exists fs_q_jt_right0primitivecoordinatesat. x4 = fs_q_jt_right0primitivecoordinatesat * S ((S (jt_index_right0primitivecoordinates)) * x5) + (jt_value_right0primitivecoordinates))) -> (exists jt_factor_right0primitivecoordinatesdivides. (jt_value_right0primitivecoordinates)=(jt_divisor_right0primitive)*jt_factor_right0primitivecoordinatesdivides)) -> jt_divisor_right0primitive=1)) - 0189
specialize jordan_enumeration_actual_value (k) - 0190
specialize jordan_enumeration_actual_value (n) - 0191
specialize jordan_enumeration_actual_value (E) - 0192
specialize jordan_enumeration_actual_value (F) - 0193
specialize jordan_enumeration_actual_value (G) - 0194
specialize jordan_enumeration_actual_value (H) - 0195
specialize jordan_enumeration_actual_value (v) - 0196
specialize jordan_enumeration_actual_value (x1) - 0197
specialize jordan_enumeration_actual_value (x4) - 0198
specialize jordan_enumeration_actual_value (x5) - 0199
apply jordan_enumeration_actual_value - 0200
exact hh - 0201
exact ha_witness_witness_witness_witness_witness_witness_right_left - 0202
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_right_left - 0203
cases right0 - 0204
have right1 : ((forall jt_index_right1bound. (exists jt_gap_right1boundindex. jt_gap_right1boundindex+S (jt_index_right1bound)=(k)) -> exists jt_value_right1bound. ((((exists fs_h_jt_right1boundat. fs_h_jt_right1boundat + S (jt_value_right1bound) = S ((S (jt_index_right1bound)) * x11)) /\ exists fs_q_jt_right1boundat. x10 = fs_q_jt_right1boundat * S ((S (jt_index_right1bound)) * x11) + (jt_value_right1bound))) /\ (exists jt_gap_right1boundvalue. jt_gap_right1boundvalue+S (jt_value_right1bound)=(n)))) /\ (forall jt_divisor_right1primitive. (exists jt_factor_right1primitivemodulus. (n)=(jt_divisor_right1primitive)*jt_factor_right1primitivemodulus) -> (forall jt_index_right1primitivecoordinates jt_value_right1primitivecoordinates. (exists jt_gap_right1primitivecoordinatesindex. jt_gap_right1primitivecoordinatesindex+S (jt_index_right1primitivecoordinates)=(k)) -> (((exists fs_h_jt_right1primitivecoordinatesat. fs_h_jt_right1primitivecoordinatesat + S (jt_value_right1primitivecoordinates) = S ((S (jt_index_right1primitivecoordinates)) * x11)) /\ exists fs_q_jt_right1primitivecoordinatesat. x10 = fs_q_jt_right1primitivecoordinatesat * S ((S (jt_index_right1primitivecoordinates)) * x11) + (jt_value_right1primitivecoordinates))) -> (exists jt_factor_right1primitivecoordinatesdivides. (jt_value_right1primitivecoordinates)=(jt_divisor_right1primitive)*jt_factor_right1primitivecoordinatesdivides)) -> jt_divisor_right1primitive=1)) - 0205
specialize jordan_enumeration_actual_value (k) - 0206
specialize jordan_enumeration_actual_value (n) - 0207
specialize jordan_enumeration_actual_value (E) - 0208
specialize jordan_enumeration_actual_value (F) - 0209
specialize jordan_enumeration_actual_value (G) - 0210
specialize jordan_enumeration_actual_value (H) - 0211
specialize jordan_enumeration_actual_value (v) - 0212
specialize jordan_enumeration_actual_value (x7) - 0213
specialize jordan_enumeration_actual_value (x10) - 0214
specialize jordan_enumeration_actual_value (x11) - 0215
apply jordan_enumeration_actual_value - 0216
exact hh - 0217
exact hb_witness_witness_witness_witness_witness_witness_right_left - 0218
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_right_left - 0219
cases right1 - 0220
have rightsame : forall jt_index_rightsame jt_left_rightsame jt_right_rightsame. (exists jt_gap_rightsameindex. jt_gap_rightsameindex+S (jt_index_rightsame)=(k)) -> (((exists fs_h_jt_rightsameleft. fs_h_jt_rightsameleft + S (jt_left_rightsame) = S ((S (jt_index_rightsame)) * x5)) /\ exists fs_q_jt_rightsameleft. x4 = fs_q_jt_rightsameleft * S ((S (jt_index_rightsame)) * x5) + (jt_left_rightsame))) -> (((exists fs_h_jt_rightsameright. fs_h_jt_rightsameright + S (jt_right_rightsame) = S ((S (jt_index_rightsame)) * x11)) /\ exists fs_q_jt_rightsameright. x10 = fs_q_jt_rightsameright * S ((S (jt_index_rightsame)) * x11) + (jt_right_rightsame))) -> jt_left_rightsame=jt_right_rightsame - 0221
specialize jordan_crt_component_recovery (n) - 0222
specialize jordan_crt_component_recovery (x4) - 0223
specialize jordan_crt_component_recovery (x5) - 0224
specialize jordan_crt_component_recovery (x10) - 0225
specialize jordan_crt_component_recovery (x11) - 0226
specialize jordan_crt_component_recovery (f) - 0227
specialize jordan_crt_component_recovery (g) - 0228
specialize jordan_crt_component_recovery (h) - 0229
specialize jordan_crt_component_recovery (s) - 0230
specialize jordan_crt_component_recovery (k) - 0231
apply jordan_crt_component_recovery - 0232
exact right0_left - 0233
exact right1_left - 0234
exact hacrt_right_right - 0235
exact hbcrt_right_right - 0236
exact hsame - 0237
have rightindex : x1=x7 - 0238
specialize jordan_enumeration_distinct (k) - 0239
specialize jordan_enumeration_distinct (n) - 0240
specialize jordan_enumeration_distinct (E) - 0241
specialize jordan_enumeration_distinct (F) - 0242
specialize jordan_enumeration_distinct (G) - 0243
specialize jordan_enumeration_distinct (H) - 0244
specialize jordan_enumeration_distinct (v) - 0245
specialize jordan_enumeration_distinct (x1) - 0246
specialize jordan_enumeration_distinct (x7) - 0247
specialize jordan_enumeration_distinct (x4) - 0248
specialize jordan_enumeration_distinct (x5) - 0249
specialize jordan_enumeration_distinct (x10) - 0250
specialize jordan_enumeration_distinct (x11) - 0251
apply jordan_enumeration_distinct - 0252
exact hh - 0253
exact ha_witness_witness_witness_witness_witness_witness_right_left - 0254
exact hb_witness_witness_witness_witness_witness_witness_right_left - 0255
exact ha_witness_witness_witness_witness_witness_witness_right_right_right_right_left - 0256
exact hb_witness_witness_witness_witness_witness_witness_right_right_right_right_left - 0257
exact rightsame - 0258
have hpos : p=v*x+x1 - 0259
exact ha_witness_witness_witness_witness_witness_witness_right_right_left - 0260
rewrite leftindex at hpos - 0261
rewrite rightindex at hpos - 0262
trans v*x6+x7 - 0263
exact hpos - 0264
symm - 0265
exact hb_witness_witness_witness_witness_witness_witness_right_right_left