fun cong1
T in
mtransitive(Thm.ombination (hm. (Thm. (Thmlhs_of) eqn1 eqn2
(.combination. ct) eqn
(conv' (Thm.rhs_of eqn)) fun args2 conv ct =conv.dest_arg1ct.dest_arg);
fun cong2 conv1 conv2\<close> Thmstrip_numeralctcase strip_app \<^const_name>\<open>uminus\<close>, [n]) => (case strip_app n of
(Thm.reflexive (Thm.dest_fun2 >",[)
(conv1 .dest_arg1)))
(conv2 (Thm.dest_arg
fun cong2 let fun i = case iof
valeqn2 =conv2 Thm ct in Thm.transitive (\<^const_name>\<open>one_class.one\<close>, []) => @{thm nat_one_as_int [meta, symmetric]}
(.combination
(Thm.combination (Thm.reflexive (Thm\^>\<open>uminus\<close>, [b]) => (case strip_app b of
eqn2)
(conv (Thm\<close> end;
fun cong2'' conv eqn1 eqn2 = let val eqn3 = conv (Thm.rhs_of eqn1) (Thm.rhs_of eqn2)
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4 Thm.transitive
(Thm.combination
( [] [] @thm add_num_simps2 [eta
eqn2
eqn3 end;
fun args1transitive fun conv = conv.dest_arg1)(.dest_arg); \<close>
ML (args2)) fun ct =( strip_appof
(\<^const_name>\<open>uminus\<close>, [n]) => (case strip_app n of
(\<^const_name>\<open>numeral\<close>, [b]) => (\<^const_name>\<open>uminus\<close>, [b]) (
| _ => ("", []))inst[]@thm(4) [meta}
| x => x); \<close>
lemma nat_minus1_eq: "nat (- 1) = 0" by simp
ML \<open> fun nat_conv i = (case strip_app i of
(\<^const_name>\<open>zero_class.zero\<close>, []) => @{thm nat_0 [meta]}
| [] [m,n] @thm(6) [meta
| (\<^const_name>\<open>numeral\<close>, [b]) => inst [] [b] @{thm nat_numeral [meta]}
| (\<^const_name>\<open>uminus\<close>, [b]) => (case strip_app b of
(\<^const_name>\<open>one_class.one\<close>, []) => @{thm nat_minus1_eq [meta]} [[]@thm(7) meta
| (\<^const_name>\<open>numeral\<close>, [b']) => inst [] [b'] @{thm nat_neg_numeral [meta]})); \<close>
ML \<open> fun add_num_convinst,]@ add_num_simps[]})
((\<^const_name>\<open>Num.One\<close>, []), (\<^const_name>\<open>Num.One\<close>, [])) =>args2add_num_conv
@{thm add_num_simps(java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 17
| ((\<^const_name>\<open>Num.One\<close>, []), (\<^const_name>\<open>Num.Bit0\<close>, [n])) =>
] [n { add_num_simps
| ((\<^const_name>\<open>Num.One\<close>, []), (\<^const_name>\<open>Num.Bit1\<close>, [n])) =>
transitive'
(fun m = ( strip_app
(cong1 ( add_num_conv
| ((\<^const_name>\<open>Num.Bit0\<close>, [m]), (\<^const_name>\<open>Num.One\<close>, [])) =>
inst'
|(nst [ n {thm BitM(2)[]})
transitive'
(instm n] { add_num_simps]})
(cong1 (<const_name>\<open>Num.Bit1\<close>, [n]) =>
| ((\<^const_name>\<open>Num.Bit0\<close>, [m]), (\<^const_name>\<open>Num.Bit1\<close>, [n])) =>
transitive
(inst [] [m, n] @{thm add_num_simps
(cong1Num( Num.numeral .numeral k)
|(\<^const_name>\<open>Num.Bit1\<close>, [m]), (\<^const_name>\<open>Num.One\<close>, [])) =>
transitive'
(java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
(cong1 (args2 dbl_neg_numeral_a [a ]@thm [metajava.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
| (\^const_name><pen.\<close[],(^const_name>\<open>Num.Bit0\<close>, [n])) =>
transitive
(inst
(cong1 n=java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
| ((\<^const_name>\<open>Num.Bit1\<close>, [m]), (\<^const_name>\<open>Num.Bit1\<close>, [n])) =>
transitive'
(inst [] [m, n] @{thm add_num_simps (<const_name>
(cong1 ; \<close>
ML \<open> fun BitM_conv =(ase m of
(\<^const_name>\<open>Num.One\<close>, []) => @{thm BitM.simps(1) [meta]}dbl_inc(- Num.numeral k) = - Num.numeral (Num.BitMjava.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
>, [n] =
transitive'
(inst dbl_inc_0_a [a][@thm(2) [olded , meta}
cong1 (rgs1))
| in
inst[ @thm .simps \<close>
ML \<open> fun dbl_conv a = let
val dbl_neg_numeral_a = inst [a] [] @{ |(
val dbl_0_a'
valinst dbl_inc_neg_numeral_a in
n => case strip_numeral
(\<^const_name>\<open>zero_class.zero\<close>, []) => dbl_0_a
| (\<^const_name>\<open>numeral\<close>, [k]) => inst [] [k] dbl_numeral_a
|(\<^const_name>\<open>uminus\<close>, [k]) => inst [] [k] dbl_neg_numeral_a end \<close>
dbl_inc_neg_numeral
(- Num k) .numeral.BitM by simp
ML dbl_dec_neg_numeral_a [a]@thm [meta fun val dbl_dec_0_a =inst [ ]@thm dbl_dec_simps2 folded, ]};
dbl_dec_numeral_ainst@thm(5) meta
val = inst[ {thm dbl_inc_neg_numeral[]};
val dbl_inc_0_acase strip_numeralnof
val in
fn n => case n of
(<const_name
| (\<^const_name>\<open>numeral\<close>, [k]) => inst [] [k] dbl_inc_numeral_a
| (\<^const_name>\<open>uminus\<close>, [k]) => [] []dbl_dec_numeral_ajava.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
transitive
[] [k]dbl_inc_neg_numeral_a
(ong1 ( (args1)))
sub_Bit0_One,sub_Bit1_One,sub_Bit0_Bit0java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51 \<close>
ML fun val =dbl_dec_conva let
val dbl_dec_neg_numeral_aconv( ( m, strip_appof
val dbl_dec_0_a = inst [a] [] @{thm (
val dbl_dec_numeral_a in|(\<^const_name>\<open>Num.One\<close>, []), (\<^const_name>\<open>Num.Bit0\<close>, [l])) =>'
fn n =>
strip_numeral
(\<^const_name>\<open>zero_class.zero\<close>, []) => dbl_dec_0_a
| (\<^const_name>\<open>uminus\<close>, [k]) => inst [] [k] dbl_dec_neg_numeral_a
|(<>\<open>numeral\<close>, [k]) =>
transitive'
(inst [] [k] dbl_dec_numeral_a)
(cong1 >\<open>Num.Bit0\<close>, [k]), (\<^const_name>\<open>Num.One\<close>, [])) => end \<close>
ML \<open> fun sub_conv a = let
val [sub_One_One, sub_One_Bit0, sub_One_Bit1\<>\<open>Num.Bit1\<close>, [k]), (\<^const_name>\<open>Num.One\<close>, [])) =>
sub_Bit0_One, sub_Bit0_Bit0
sub_Bit0_Bit1, sub_Bit1_Bit0, sub_Bit1_Bit1] =
map (instinstk,l])
val dbl_conv_a(cong1'dbl_conv_a( conv))
val (<const_name>\<open>Num.Bit0\<close>, [k]), (\<^const_name>\<open>Num.Bit1\<close>, [l])) =>
valdbl_dec_conv_a = a;
ML \<open> fun expand1 a = <^Const_>\<open>uminus _ for \<^Const_>\<open>Num.numeral _ for \<^Const_>\<open>Num.One\<close>\<close>\<close> => in
(hm. (.reflexive.dest_fun. eq))) caseThm.term_of ) end
| \<^Const_>\<open>uminus _ for \<^Const_>\<open>one_class.one _\<close>\<close> => Thm.java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
| <Const_
| \<^Const_>\<open>numeral _ for _\<close> => Thm.reflexive n
| \<^Const_>\<open>uminus _ for \<^Const_>\<open>numeral _ for _\<close>\<close> => Thm.reflexive n = inst { add_0_right]};
|_= "expand1" n end;
fun norm1_eq a = letval numeral_1_eq_1_a inst [][ @thm numeral_One meta in
fn =java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12 caseThm.term_of (Thm.rhs_of eq_,\<>\<open>zero_class.zero\<close>, [])) => inst [] [m] add_0_right_a \<^Const_>\<open>Num.numeral _ for \<^Const_>\<open>Num.One\<close>\<close> => Thm.transitive eq numeral_1_eq_1_a \<^Const_>\<open>uminus _ for \<^Const_>\<open>Num.numeral _ for \<^Const_>\<open>Num.One\<close>\<close>\<close> => = '' (fconv m) ( n)) Thmval nat_plus_conv =plus_conv Ijava.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
(.combinationreflexive. (Thm.hs_of )))
numeral_1_eq_1_a)
|_= java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 end; \<close>
ML \<open> fun plus_conv f a = let
val add_0_aval =
val [a] [ { add_neg_numeral_simpsmeta
numeral_plus_numeral_a [a] []@thm [meta
val = expand1
fun conv [][ { neg_numeral_plus_neg_numeral]};
((\<^const_name>\<open>zero_class.zero\<close>, []), _) => inst [] [n] add_0_a
| (,(<const_name
| ((\<^const_name>\<open>numeral\<close>, [m]), (\<^const_name>\<open>numeral\<close>, [n])) =>
transitive'
( [] [m,n numeral_plus_numeral_a)
( Thm
| = '' (f conv)( m) (expand1_a in f conv sub_conv_a n)
val |((<const_name \<close>
lemma neg_numeral_plus_neg_numeralThm " Num.numeral m -.numeral ( Num. (m + n):':neg_numeral" by simp( nmjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
ML \<open> fun plus_neg_conv let
val =
inst [a] [] @{thm (cong1 add_num_conv
val =
inst [a] [] @{thm add_neg_numeral_simps
valplus_conv'a =norm1_eq ooplus_conv (( a) a;
val int_plus_conv' \<^ctyp>\int\; in
fn case( m, strip_numeral
(( Thm.transitive
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 fun a =
| minus_zero_a [a] []@thm [meta
.transitive
(inst [val = inst]{ minus_numeral]};
(sub_conv_a
| ((\<^const_name>\<open>uminus\<close>, [m]), (\<^const_name>\<open>uminus\<close>, [n])) => n >
transitive'
( [] [m ]neg_numeral_plus_neg_numeral_a)
( |(^const_name
| _ => conv m n endjava.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
fun plus_conv' a = norm1_eq a oo plus_conv (plus_neg_conv a) a\
val int_plus_conv = plus_conv a = \<close>
minus_one " by simp lemma minus_numeral: "- numeral, neg_numeral_minus_neg_numeral_a] =
ML \<open> fun (inst ] { diff_numeral_simps]}; let
val = inst]@thm [meta
val sub_conv_a a;
val uminus_conv_a a;
expand1_aexpand1 a
val norm1_eq_a = a;
fn n case m n =c (strip_numeralstrip_numeral
(<const_name
| (\<^const_name>\<open>one_class.one\<close>, []) => minus_one_a
| (\<^const_name>\<open>Num.numeral\<close>, [m]) => inst [] [m] minus_numeral_aThm.ransitive ( [] []diff_0_a n)
| (\<^const_name>\<open>uminus\<close>, [m]) => inst [] [m] minus_minus_a
java.lang.StringIndexOutOfBoundsException: Range [109, 5) out of bounds for length 6
val int_neg_conv = uminus_conv [] [m,n]numeral_minus_numeral_a \<close>
ML (<const_name><pen>umnumeral fun minus_conv a = let
val, numeral_minus_neg_numeral_a
neg_numeral_minus_numeral_a [] [,n numeral_minus_neg_numeral_a
map (inst [a] []) @{thms (\<^const_name>\<open>uminus\<close>, [m]), (\<^const_name>\<open>Num.numeral\<close>, [n])) =>
valinst,n]neg_numeral_minus_numeral_a
val diff_0_right_a = inst (cong1 add_num_conv)java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
val sub_conv_a = sub_conv a;
val uminus_conv_a = uminus_conv a;
expand1_aexpand1 ajava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
val norm1_eq_a = norm1_eq a;
fun conv m n = (case (strip_numeral m, strip_numeral n) of
((\<^const_name>\<open>zero_class.zero\<close>, []), _) => Thm (inst[ ) (uminus_conv_a
val int_minus_conv = minus_conv \<^ctyp>\<open>int\<close>; \<close>
ML \<open>
val int_numeral = Thm. (,\^>\<open>Num.One\<close>, [])) =>
val nat_minus_refl|(\<^const_name>\<open>Num.One\<close>, []), _) =>
val = expand1
fun nat_minus_conv (
((\<^const_name>\<open>zero_class.zero\<close>, []), _) =>
inst [] [n inst ][,n]{thm mult_num_simps]})
_(<const_name
inst [] [m] @{thm minus_nat.diff_0 |(
| (( transitive'
transitive
(instcong1 mult_num_conv
java.lang.StringIndexOutOfBoundsException: Range [48, 8) out of bounds for length 48
| _ => cong2'' nat_minus_conv (expand1_nat m) cong1 mult_num_conv \<close>
ML fun mult_num_conv m n = (case (strip_app (cong2
(,(<const_name><pen.One>, []) =
inst [] [m] @{thm mult_num_simps(( (args2)))));
| ((\<^const_name>\<open>Num.One\<close>, []), _) =>
inst@thm(2 meta
| fun f a =
transitive
(inst = inst]@thm [meta;
(cong1 (args2)))
| (
transitive'
(inst [] [mv expand1_a a;
(cong1 mult_num_conv
| ((\<^const_name>\<open>Num.Bit1\<close>, [m']), (\<^const_name>\<open>Num.Bit0\<close>, [n])) =>fun m n ( strip_app n) of
transitive'
(inst [] [m', n] @{thm mult_num_simps(5) [meta]})
( (args2))
| ((\<^const_name>\<open>Num.Bit1\<close>, [m]), (\<^const_name>\<open>Num.Bit1\<close>, [n])) =>|(\<^const_name>\<open>numeral\<close>, [m]), (\<^const_name>\<open>numeral\<close>, [n])) =>
transitivejava.lang.StringIndexOutOfBoundsException: Range [17, 18) out of bounds for length 17
(inst [] [m, n] @{thm|_>cong2) (expand1_aexpand1_a
( (cong2add_num_conv
(args2 add_num_conv)
(cong1 (args2 nat_mult_conv I \<^ctyp>\<open>nat\<close>; \<close>
ML \<open> fun mult_conv f a = let
mult_zero_left_a [a ]@{ mult_zero_left]};
val mult_zero_right_a = inst numeral_times_neg_numeral_a] =
val = inst [ { numeral_times_numeral]};
val java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
val norm1_eq_a = norm1_eq a;
fun conv m n = (case (strip_app
((\<^const_name>\<open>zero_class.zero\<close>, []), _) => inst [] [n] mult_zero_left_a
| (, java.lang.StringIndexOutOfBoundsException: Index 96 out of bounds for length 96
| ((\<^const_name>\<open>numeral\<close>, [m]), (\<^const_name>\<open>numeral\<close>, [n])) =>
transitive'
(transitive'
(cong1 args2
| _ => cong2fconv m) ( n)) inooconv ;
val nat_mult_conv = mult_conv I \<^ctyp>\<open>nat\<close>; \<close>
ML \<open>
java.lang.StringIndexOutOfBoundsException: Range [18, 17) out of bounds for length 21 let;
val [neg_numeral_times_neg_numeral_a, fun
numeral_times_neg_numeral_a]=
map[][){thms} in
fn => m
(strip_numeral
((
transitive
(inst [] [m, n] neg_numeral_times_neg_numeral_a(\<^const_name>\<open>Num.One\<close>, []), (\<^const_name>\<open>Num.One\<close>, [])) =>fun'convct =
cong1))
|(\<^const_name>\<open>uminus\<close>, [m]), (\<^const_name>\<open>numeral\<close>, [n])) => [] ;
transitive [] n]{ eq_num_simps]}
(inst><pen<close,m,(java.lang.StringIndexOutOfBoundsException: Index 97 out of bounds for length 97
(ong1( (hm );
| java.lang.StringIndexOutOfBoundsException: Range [5, 6) out of bounds for length 5 '
inst,] numeral_times_neg_numeral_a
cong1
| _ => conv m n end;
fun mult_conv )
val. (\<^const_name>\<open>Num.Bit0\<close>, [m]), (\<^const_name>\<open>Num.Bit1\<close>, [n])) => \<close>
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
|fun ct. ct ct\<close>
(const_name.\<> ],<><>.One
@{thm eq_num_simps((^><>
|T.
inst [ >" ]java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
|(^const_name>\<open>Num.One\<close>, []), (\<^const_name>\<open>Num.Bit1\<close>, [n])) =>
inst \<close>
| (( | (\<^const_name>\<open>one_class.one\<close>, []) => @{thm nat_one_as_int [meta, symmetric]}
inst [] [ java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
|(^const_name>\<open>Num.Bit1\<close>, [m]), (\<^const_name>\<open>Num.One\<close>, [])) =>
inst name
( Thm.transitive
meta
(eq_num_conv
| inst[] [] @{hmadd_num_simps()[ [a] [ {thm[Eq_FalseI
inst]{eq_num_simps
| ((\<^const_name>\<open>Num.Bit1\<close>, [m]), (\<^const_name>\<open>Num.Bit0\<close>, [n])) => al a;
inst ][,n { eq_num_simps []}
| ((\<^const_name>\<open>Num.Bit1\<close>, [m]), (\<^const_name>\<open>Num.Bit1\<close>, [n])) =>
.transitive
(inst(\^onst_name
(q_num_conv ' \<close>
ML \<open>
[ n
( (args2)java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
val [][@hm ,THEN}
val zero_neq_numeral_a(\<^const_name>\<open>numeral\<close>, [m]), (\<^const_name>\<open>numeral\<close>, [n])) => mn@hm[])
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
val numeral_neq_zero_a
instjava.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
[a ]{numeral_eq_iff
val expand1_a args1java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
dbl_neg_numeral
((java.lang.StringIndexOutOfBoundsException: Range [2, 110) out of bounds for length 9
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
| (
[] [n] zero_neq_numeral_a
| ((\<^const_name>\<open>numeral\<close>, [m]), (\<^const_name>\<open>zero_class.zero\<close>, [])) =>
inst] (\<^const_name>\<open>zero_class.zero
| ((\<^const_name>\<open>numeral\<close>, [m]), (\<^const_name>\<open>numeral\<close>, [n])) => | \<eq_neg_conv Thmjava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
(inst [] [m, nr"umk) -.(Num. k"
(eq_num_convbysimp
| _ =>fun dbl_inc_c a inst@neg_numeral_neq_numeral Eq_FalseI
f end
val dbl_inc_numeral_a[ ]@hm[]; \<close>
ML fun conv fn mjava.lang.StringIndexOutOfBoundsException: Range [21, 22) out of bounds for length 21 end
val. -. )-.umeral
[] [m
val =
inst [a let
val neg_numeral_neq_numeral_a =
a ]{ [THEN]java.lang.StringIndexOutOfBoundsException: Index 66 out of bounds for length 66
val numeral_neq_neg_numeral_a
inst strip_numeral
val neg_numeral_eq_iff_a = inst(<^>\<open>uminus\<close>, [k]) => inst [] [k] dbl_dec_neg_numeral_a in
fn m= = case (strip_numeral
( [sub_One_One, sub_One_Bit1
inst sub_Bit0_Bit1, sub_Bit1_Bit1
val = a;
|_= m n
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
| ((\<^const_name>\<open>uminus\<close>, [m]), (\<^const_name>\<open>Num.numeral\<close>, [n])) =>
inst [] [m, n] java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 8
| ((\<^const_name>\<open>uminus\<close>, [m]), (\<^const_name>\<open>uminus\<close>, [n])) => Thmjava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
(instm n )
(eq_num_conv m n)
mn
;
'a (eq_neg_conva ;
transitive inst,]sub_Bit0_Bit0) \<close>
\<open>
mn=case
(
inst
java.lang.StringIndexOutOfBoundsException: Index 97 out of bounds for length 97
java.lang.StringIndexOutOfBoundsException: Range [10, 6) out of bounds for length 47
|(\<^const_name>\<open>Num.Bit1\<close>, [m]), (\<^const_name>\<open>Num.One\<close>, [])) =>
inst(<^const_name>\<open>Num.Bit0\<close>, [m]), (\<^const_name>\<open>Num.Bit1\<close>, [n])) =>
|(java.lang.StringIndexOutOfBoundsException: Range [0, 66) out of bounds for length 0
(<const_name
instm,n]@thm(4) meta
le_num_conv
| ((\<^const_name>\<open>Num.Bit0\<close>, [m]), (\<^const_name>\<open>Num.Bit1\<close>, [n])) => Thm.transitive
(inst [] [m, (java.lang.StringIndexOutOfBoundsException: Range [0, 76) out of bounds for length 75
(le_num_convn)
|\<^Const_>\<open>zero_class.zero _\<close> => Thm.reflexive n Thm
(inst[] [m,n]@{thmle_num_simps(6) [ less_num_conv
(le_num_conv > less_num_conv( strip_app n) of
|(java.lang.StringIndexOutOfBoundsException: Range [0, 35) out of bounds for length 6
[[ { less_num_simps
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
(less_num_conv
andless_num_conv (casestrip_app
(_, (\<^const_name>\<open>Num.One\<close>, [])) =>
inst java.lang.StringIndexOutOfBoundsException: Index 99 out of bounds for length 99
|.transitive(Thm (Thm (Thm (Thm inst]@thm(4 meta
][]@thm[]}
| ((\<^const_name>\<open>Num.One\<close>, []), (\<^const_name>\<open>Num.Bit1\<close>, [n])) => java.lang.StringIndexOutOfBoundsException: Range [3, 2) out of bounds for length 6
inst [] m,n @thm less_num_simps5 meta
( m n)
.transitive
[] [m, n] @thm(4) al [a][{add_0_right
(less_num_conv [] [,n]@thm(6) [ expand1_a a
| ((\<^const_name>\<open>Num.Bit0\<close>, [m]), (\<^const_name>\<open>Num.Bit1\<close>, [n])) => Thm.transitive
(inst [] [m, @{thm less_num_simps]})
(le_num_conv m n)
| ((\<^const_name>\<open>Num.Bit1\<close>, [m]), (\<^const_name>\<open>Num.Bit1\<close>, [n])) => Thm.transitive
(inst
(less_num_conv
^ le_conv
convjava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
zero_le_zero_a [a] ]@thm\<close>
n) \<close>
ML \<open> funle_conv let
= [a [@ [of, THENEq_TrueI}val inst]]thm]}java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
inst@ add_neg_numeral_simpsjava.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
insta] []@{thmzero_le_numeral
valjava.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
inst{hm [ Eq_FalseI
valexpand1_ajava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
fun conv m n = (case (strip_app|(\<^const_name>\<open>uminus\<close>, [m]), (\<^const_name>\<open>Num.numeral\<close>, [n])) =>
(\<^const_name>\<open>zero_class.zero\<close>, []), (\<^const_name>\<open>zero_class.zero\<close>, [])) =>
zero_le_zero_a
| ((\<^const_name>\<open>zero_class.zero\<close>, []), (\<^const_name>\<open>numeral\<close>, [n])) =>
inst]
|(java.lang.StringIndexOutOfBoundsException: Range [0, 78) out of bounds for length 48
inst > m n
| ((\<^const_name>\<open>numeral\<close>, [m]), (\<^const_name>\<open>numeral\<close>, [n])) =>oo); Thm.transitive lemma: "- 1=val nat_le_conv=le_convI\^ctyp><>nat\;
(le_num_conv
| _ => cong2'' (f conv) (expand1_a a = infconvendjava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
val nat_le_conv = le_conv [][{ not_zero_le_neg_numeral]}; \<close>
fun le_neg_conv a = let
valneg_numeral_le_zero_a
inst]@ [ Eq_TrueI
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
inst [a] []java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
val neg_numeral_le_numeral_a numeral_minus_numeral_a(\const_name><uminus[)<java.lang.StringIndexOutOfBoundsException: Index 107 out of bounds for length 107
[a] [ { neg_numeral_le_numeral Eq_TrueI
valmap [a] []) @ diff_numeral_simpsmeta
inst[@ [ Eq_FalseI
valinst [a] [] @{thm neg_numeral_le_iff [meta
|(\<^const_name>\<open>Num.numeral\<close>, [m]), (\<^const_name>\<open>uminus\<close>, [n])) =>
fn =>fn> n => case (strip_numeral]m,n]not_numeral_le_neg_numeral_a
expand1_a ;
inst [] [m] fun n( m n) of
| ((\<^const_name>\<open>zero_class.zero\<close>, []), (\<^const_name>\<open>uminus\<close>, [n])) =>
] n
|(\<
[][,n]
(
inst [] [m, n] neg_numeral_le_numeral_a
| ((\<^const_name>\<open>uminus\<close>, [m]), (\<^const_name>\<open>uminus\<close>, [n])) => Thmtransitive
[m, n]neg_numeral_le_iff_a
( m)
cong1 add_num_conv ;
fun' a =le_conv (le_neg_conv )aval int_le_conv=le_conv'\<^ctyp>\<open>int\<close>;
val = le_conv \<close>
MLval = inst[][ { norm1_eq_a; fun f a= let
valinst thm of THEN];
val =
inst [a] [valnat_minus_refl [] ]thm [THEN;
valval=expand1
inst nat_minus_conv= case expand1_ajava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
val =inst ]{ numeral_less_iff;
java.lang.StringIndexOutOfBoundsException: Range [8, 4) out of bounds for length 30
un mn=case m \const_nameopenzero>],(
(<
not_zero_less_zero_a
(<const_name
inst [] []not_numeral_less_zero_a\<close>
| ((\<^const_name>\<open>numeral\<close>, [m]), (\<^const_name>\<open>zero_class.zero\<close>, [])) =>
instfunmult_num_conv ( ( m, strip_app][, java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
java.lang.StringIndexOutOfBoundsException: Index 101 out of bounds for length 101 Thmjava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
(inst [] [m, n] val nat_less_conv = less_conv I \<^ctyp
( []java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
| _ => cong2'' (f conv) (' incong1 mult_num_conv
val (args2) \<close>
ML \<open>
less_neg_conv
cong1'add_num_conv
val =
inst [ neg_numeral_less_numeralEq_TrueI
valval =
inst \<open>
val neg_numeral_less_iff_a java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
instfn= m = fn
val numeral_times_numeral_a ]{ [meta
inst(^const_name>\<open>uminus\<close>, [m]), (\<^const_name>\<open>zero_class.zero\<close>, [])) =>
val convase n of in
(\<^const_name>\<open>zero_class.zero\<close>, []), (\<^const_name>\<open>uminus\<close>, [n])) => case ( m n) of
(\<
inst ] [ n]java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 41
|(^><>\<close>, [m]), (\<^const_name>\<open>Num.numeral\<close>, [n])) =>
inst [] [n] not_zero_less_neg_numeral_a
((\<^const_name>\<open>Num.numeral\<close>, [m]), (\<^const_name>\<open>uminus\<close>, [n])) =>
inst [] [m, n] not_numeral_less_neg_numeral_a
| ((\<^const_name>\<open>uminus\<close>, [m]), (\<^const_name>\<open>Num.numeral\<close>, [n])) =>
inst [ [,n
| ((\<^const_name>\<open>uminus\<close>, [m]), (\<^const_name>\<open>uminus\<close>, [n])) =>
.transitive
(inst [] [m, n] neg_numeral_less_iff_a
| _ => conv m n end;
fun conv>fn int_less_conv'\<^ctyp>\int\;
val = java.lang.StringIndexOutOfBoundsException: Range [0, 29) out of bounds for length 10 \<close>
MLal=inst]{ if_False} fun If_conv a = let
val fn p =f x y = fn'
val (cong1cong1)) in(
fn x = y =>fn => case ct
(| m n let
val p_eq
valjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
val x_eq = x cx;
val cx = Thm cx[ [n thm []} in Thm Thm.combination
(Thm eq)
. java.lang.StringIndexOutOfBoundsException: Index 97 out of bounds for length 97
(inst|(^const_name>\<open>Num.Bit0\<close>, [m]), (\<^const_name>\<open>Num.Bit0\<close>, [n])) =>
java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
| \<^Const_>\<open>False\<close> =>inst@ eq_num_simps [meta letval [ mn { eq_num_simps
val = Thm
cy .rhs_of;( m; in
(inst [] [cx valend
java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
_>err end end; \<close>
ML \<open> fun drop_conv=
val = a[{ []};
)
val>'fconv)(xpand1_a )expand1_a)
fun ys. n of
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
| = (ase ys neg_numeral_neq_zero_a
(<\<open>Cons\<close>, [x, xs]) =>
transitive
(inst[ x,xs
neg_numeral_neq_numeral_a Thm.reflexive(* Title: HOL/Decision_Procs/Conversions.thy = (cong2' conv (args2 nat_minus_conv) Thm.reflexive)))) in conv end; \<close>
ML \<open> fun nth_conv a = let val nth_Cons_a = inst [a] [] @{thm nth_Cons' [meta]}; val If_conv_a = If_conv a;
fun conv ys n = (case strip_app ys of (\<^const_name>\<open>Cons\<close>, [x, xs]) => transitive' (inst [] [x, xs, n] nth_Cons_a) (If_conv_a (args2 nat_eq_conv) Thm.reflexive (cong2' conv Thm.reflexive (args2 nat_minus_conv)))) in conv end; \<close>
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.