hcju/isabelleps huggingface dataset:
step: fixes e1 :: "((nat \<times> nat) \<times> transition) fset"   and s1 :: "nat"   and r1 :: "nat \<Rightarrow>f value option"   and l :: "String.literal"   and i :: "value list"   and e2 :: "((nat \<times> nat) \<times> transition) fset"   and s2 :: "nat"   and r2 :: "nat \<Rightarrow>f value option"   and es :: "(String.literal \<times> value list) list" assumes "\<forall>(s1', t1)|\<in>|possible_steps e1 s1 r1 l i. \<exists>(s2', t2)|\<in>|possible_steps e2 s2 r2 l i. evaluate_outputs t1 i r1 = evaluate_outputs t2 i r2 \<and> executionally_equivalent e1 s1' (evaluate_updates t1 i r1) e2 s2' (evaluate_updates t2 i r2) es"   and "\<forall>(s2', t2)|\<in>|possible_steps e2 s2 r2 l i. \<exists>(s1', t1)|\<in>|possible_steps e1 s1 r1 l i. evaluate_outputs t1 i r1 = evaluate_outputs t2 i r2 \<and> executionally_equivalent e1 s1' (evaluate_updates t1 i r1) e2 s2' (evaluate_updates t2 i r2) es" shows "executionally_equivalent e1 s1 r1 e2 s2 r2 ((l, i) # es)"
maddux1: fixes f :: "'a \<Rightarrow> 'a"   and x :: "'a"   and y :: "'a" assumes "residuated f" shows "f (x \<sqinter> - conjugate f y) \<le> f x \<sqinter> - y"
store_word_mem_low_equal_none: fixes s1 :: "'b sparc_state"   and s2 :: "'b sparc_state"   and addr :: "word32"   and data :: "word32"   and bm :: "word4" assumes "low_equal s1 s2"   and "store_word_mem (add_data_cache s1 addr data bm) addr data bm 10 = None" shows "store_word_mem (add_data_cache s2 addr data bm) addr data bm 10 = None"
zhmset_of_1: shows "zhmset_of 1 = 1"
times_monomial_left: fixes t :: "'c"   and c :: "'d"   and p :: "'c \<Rightarrow>\<^sub>0 'd" shows "monomial c t * p = punit.monom_mult c t p"
comm_ring_1_def: fixes times :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and one :: "'b"   and plus :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and zero :: "'b"   and minus :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and uminus :: "'b \<Rightarrow> 'b" shows "class.comm_ring_1 times one plus zero minus uminus \<equiv> class.comm_monoid_mult times one \<and> class.comm_ring plus zero minus uminus times \<and> class.zero_neq_one one zero"
fresh_fact_automatic: fixes z :: "name"   and N :: "lam"   and L :: "lam"   and y :: "name" assumes "z \<sharp> N"   and "z \<sharp> L" shows "z \<sharp> N[y::=L]"
eval\<o>_inverse: fixes x :: "\<o>" shows "make\<o> (eval\<o> x) = x"
scf_list_empty: fixes scf :: "nat \<Rightarrow> nat" shows "scf_list scf [] = []"
infer_simp_6: fixes \<Gamma> :: "'a \<Rightarrow> PreSimplyTyped.type option"   and P :: "'a trm" shows "infer \<Gamma> (Fst P) = (case infer \<Gamma> P of None \<Rightarrow> None | Some TUnit \<Rightarrow> None | Some (TVar x) \<Rightarrow> Map.empty x | Some (TArr type1 x) \<Rightarrow> Map.empty x | Some (TPair \<tau> \<sigma>) \<Rightarrow> Some \<tau>)"
impl_spec: shows "implc_sinvar m_impl G = c_sinvar m_spec (list_graph_to_graph G)"
x_img_1: shows "\<sigma> x \<notin> subst_range \<sigma>"
indexed_effect_nominal_ts_axioms: shows "indexed_effect_nominal_ts TYPE('idx) L (\<turnstile>) (\<rightarrow>) effect_apply"
sq_mtx_scaleR_eq: fixes c :: "real"   and A :: "'a sq_mtx" shows "c *\<^sub>R A = to_mtx (\<chi>i j. c *\<^sub>R A $$ i $ j)"
opar_comp_def: fixes s :: "((nat \<Rightarrow> 'd) \<times> 'e, 'g seq_action) automaton"   and i :: "nat"   and t :: "('f, 'g seq_action) automaton" shows "s \<langle>\<langle>\<^bsub>i\<^esub> t \<equiv> \<lparr>init = extg ` (init s \<times> init t), trans = oparp_sos i (automaton.trans s) (automaton.trans t)\<rparr>"
scc_ofI_reachable': fixes v :: "'a"   and u :: "'a" assumes "v \<rightarrow>\<^sup>*\<^bsub>H\<^esub> u" shows "u \<in> H.scc_of v"
lappend_is_LNil_conv: fixes s :: "'b llist"   and t :: "'b llist" shows "(s @@ t = LNil) = (s = LNil \<and> t = LNil)"
index_smult_mat_2: fixes a :: "'d"   and A :: "'d mat" shows "dim_row (a \<cdot>\<^sub>m A) = dim_row A"
member_def: fixes xs :: "'a list"   and x :: "'a" shows "List.member xs x = (x \<in> set xs)"
add_nonneg_eq_0_iff: fixes x :: "'b"   and y :: "'b" assumes "(0::'b) \<le> x"   and "(0::'b) \<le> y" shows "(x + y = (0::'b)) = (x = (0::'b) \<and> y = (0::'b))"
rawpsubst_eqv: fixes \<phi>1 :: "'fmla"   and \<phi>2 :: "'fmla"   and txs :: "('trm \<times> 'var) list" assumes "\<phi>1 \<in> fmla"   and "\<phi>2 \<in> fmla"   and "snd ` set txs \<subseteq> var"   and "fst ` set txs \<subseteq> trm" shows "rawpsubst (eqv \<phi>1 \<phi>2) txs = eqv (rawpsubst \<phi>1 txs) (rawpsubst \<phi>2 txs)"
poly_mult_consistent: fixes K :: "'a set" assumes "subring K R" shows "ring.poly_mult (R\<lparr>carrier := K\<rparr>) = poly_mult"
reaches_fields: fixes x :: "'e"   and y :: "'e"   and s' :: "'f process_name \<Rightarrow> ('g, 'f, 'h, 'e) Model.local_state"   and s :: "'k process_name \<Rightarrow> ('i, 'k, 'j, 'e) Model.local_state" assumes "(x reaches y) s'"   and "\<forall>r'. \<Union> (ran ` obj_fields ` set_option (sys_heap s' r')) = \<Union> (ran ` obj_fields ` set_option (sys_heap s r'))" shows "(x reaches y) s"
flip_altsublist_adjacent_def: fixes S :: "'b set"   and ss :: "'b list"   and ts :: "'b list" assumes "PreCoxeterSystem S" shows "PreCoxeterSystem.flip_altsublist_adjacent ss ts \<equiv> \<exists>s t as bs. ss = as @ pair_relator_halflist s t @ bs \<and> ts = as @ pair_relator_halflist t s @ bs"
is_density_exprI: fixes t :: "pdf_type"   and \<Gamma> :: "nat \<Rightarrow> pdf_type"   and e :: "cexpr"   and vs' :: "nat list"   and vs :: "nat list"   and \<delta> :: "cexpr" assumes "case_nat t \<Gamma> \<turnstile>\<^sub>c e : REAL"   and "free_vars e \<subseteq> shift_var_set (set vs')"   and "nonneg_cexpr (shift_var_set (set vs')) (case_nat t \<Gamma>) e" shows "is_density_expr (vs, vs', \<Gamma>, \<delta>) t e"
pairwise_balance_axioms: shows "pairwise_balance \<V> \<B> \<Lambda>"
wp2_Skip: fixes Q :: "(char list \<Rightarrow> int) \<Rightarrow> enat" shows "wp\<^sub>2 SKIP Q = (\<lambda>s. eSuc (Q s))"
case_1: fixes f1 :: "'a"   and f2 :: "'b \<Rightarrow> 'b msllist \<Rightarrow> 'a" shows "(case MSLNil of MSLNil \<Rightarrow> f1 | MSLCons x xa \<Rightarrow> f2 x xa) = f1"
sum_telescope': fixes m :: "nat"   and n :: "nat"   and f :: "nat \<Rightarrow> 'a" assumes "m \<le> n" shows "(\<Sum>k = Suc m..n. f k - f (Suc k)) = f (Suc m) - f (Suc n)"
strict_mono_cancel_less: fixes f :: "'a \<Rightarrow> 'b"   and x :: "'a"   and y :: "'a" assumes "OrdinalInduct.strict_mono f" shows "(f x < f y) = (x < y)"
differing_vars_lists_def: fixes dma :: "('a \<Rightarrow> 'b) \<Rightarrow> 'a \<Rightarrow> Sec"   and \<C>_vars :: "'a \<Rightarrow> 'a set"   and eval :: "((('c \<times> (Mode \<Rightarrow> 'a set)) \<times> ('a \<Rightarrow> 'b)) \<times> ('c \<times> (Mode \<Rightarrow> 'a set)) \<times> ('a \<Rightarrow> 'b)) set"   and mem\<^sub>1 :: "'a \<Rightarrow> 'b"   and mem\<^sub>2 :: "'a \<Rightarrow> 'b"   and mems :: "(('a \<Rightarrow> 'b) \<times> ('a \<Rightarrow> 'b)) list"   and i :: "nat" assumes "sifum_security_init dma \<C>_vars eval" shows "sifum_security_init.differing_vars_lists mem\<^sub>1 mem\<^sub>2 mems i \<equiv> sifum_security_init.differing_vars mem\<^sub>1 (fst (mems ! i)) \<union> sifum_security_init.differing_vars mem\<^sub>2 (snd (mems ! i))"
assms_1: shows "model valuation (filter (\<lambda>c. \<not> clauseTautology c) F)"
H_def: fixes p :: "('a \<times> 'a) set"   and x :: "('a \<times> 'a) set"   and q :: "('a \<times> 'a) set" shows "rel_aka.H p x q = (rel_aka.dom_op p \<subseteq> rel_aka.wp x q)"
add_cancel_right_left: fixes plus :: "'d \<Rightarrow> 'd \<Rightarrow> 'd"   and minus :: "'d \<Rightarrow> 'd \<Rightarrow> 'd"   and zero :: "'d"   and a :: "'d"   and b :: "'d" assumes "class.cancel_comm_monoid_add plus minus zero" shows "(a = plus b a) = (b = zero)"
prems: shows "set (ws @ [a]) \<subseteq> carrier_vec n"
eConseq2: fixes A :: "triple set"   and P :: "assn"   and e :: "expr"   and Q' :: "vassn"   and Q :: "vassn" assumes "A \<turnstile>\<^sub>e {P} e {Q'}"   and "\<forall>v t. Q' v t \<longrightarrow> Q v t" shows "A \<turnstile>\<^sub>e {P} e {Q}"
pcp_seq_sub: fixes C :: "'b set set"   and S :: "'b set"   and n :: "nat" shows "pcp_seq (C::'b set set) (S::'b set) (n::nat) \<subseteq> pcp_lim C S"
jointfun_def: fixes n :: "nat"   and f :: "nat \<Rightarrow> 'd"   and m :: "nat"   and g :: "nat \<Rightarrow> 'd" shows "jointfun n f m g = (\<lambda>i. if i \<le> n then f i else g (sliden (Suc n) i))"
cases: fixes a :: "presb" assumes "lformula0 a" obtains "is" :: "int list" and i :: "int" where "a = presb.Eq is i 0"
InvariantCFalse_def: fixes conflictFlag :: "bool"   and M :: "(Literal \<times> bool) list"   and C :: "Literal list" shows "InvariantCFalse conflictFlag M C \<equiv> conflictFlag \<longrightarrow> clauseFalse C (elements M)"
sorted_wrt_append: fixes P :: "'c \<Rightarrow> 'c \<Rightarrow> bool"   and xs :: "'c list"   and ys :: "'c list" shows "sorted_wrt P (xs @ ys) = (sorted_wrt P xs \<and> sorted_wrt P ys \<and> (\<forall>x\<in>set xs. \<forall>y\<in>set ys. P x y))"
IH: shows "rel_option (rel_prod (fmrel Q) (rel_prod (=) R)) (vfind_match cs\<^sub>1 t\<^sub>1) (vfind_match cs\<^sub>2 t\<^sub>2)"
set_iterator_emp_def: fixes c :: "'d \<Rightarrow> bool"   and f :: "'e \<Rightarrow> 'd \<Rightarrow> 'd"   and \<sigma>0 :: "'d" shows "set_iterator_emp c f \<sigma>0 = \<sigma>0"
parAssoc: fixes P :: "pi"   and Q :: "pi"   and R :: "pi" shows "(P \<parallel> Q) \<parallel> R \<approx> P \<parallel> Q \<parallel> R"
disj: shows "set ws \<inter> set (normal_vectors ws) = {}"
functor_axioms: shows "functor C.CC.comp (\<cdot>\<^sub>C) C'.T"
mset_le_decr_left1: fixes a :: "'a multiset"   and c :: "'a multiset"   and b :: "'a multiset" assumes "a + c \<subseteq># b" shows "a \<subseteq># b"
flowD_finite_IN: fixes f :: "'v option \<times> 'v option \<Rightarrow> ennreal"   and x :: "'v option" assumes "flow \<Psi> f"   and "x \<noteq> sink \<Psi>" shows "d_IN f x \<noteq> \<top>"
local_ring_axioms: shows "local_ring A addA multA zeroA oneA"
comparator_def: fixes comp :: "'c \<Rightarrow> 'c \<Rightarrow> order" shows "comparator comp \<equiv> (\<forall>x y. invert_order (comp x y) = comp y x) \<and> (\<forall>x y. comp x y = Eq \<longrightarrow> x = y) \<and> (\<forall>x y z. comp x y = Lt \<longrightarrow> comp y z = Lt \<longrightarrow> comp x z = Lt)"
apply_chart_smooth_on: fixes c :: "('c, 'c) chart"   and k :: "enat" assumes "c \<in> manifold_eucl.atlas k" shows "k-smooth_on (domain c) (apply_chart c)"
unit_factor: fixes a :: "'a list"   and b :: "'a list" assumes "a \<oplus>\<^bsub>poly_ring R\<^esub> b \<in> Units (add_monoid (poly_ring R))"   and "a \<in> carrier (poly_ring R)"   and "b \<in> carrier (poly_ring R)" shows "a \<in> Units (add_monoid (poly_ring R))"
assms_5: shows "us = map gso (rev [0..<i])"
sets_measure_of_conv: fixes \<Omega> :: "'a set"   and A :: "'a set set"   and \<mu> :: "'a set \<Rightarrow> ennreal" shows "sets (measure_of \<Omega> A \<mu>) = (if A \<subseteq> Pow \<Omega> then sigma_sets \<Omega> A else {{}, \<Omega>})"
le_funI: fixes f :: "'b \<Rightarrow> 'c"   and g :: "'b \<Rightarrow> 'c" assumes "\<And>x. f x \<le> g x" shows "f \<le> g"
coalg_def: fixes B1 :: "'b set"   and B2 :: "'c set"   and s1 :: "'b \<Rightarrow> ('d, 'b, 'c) F1"   and s2 :: "'c \<Rightarrow> ('d, 'b, 'c) F2" shows "coalg B1 B2 s1 s2 = ((\<forall>a\<in>B1. s1 a \<in> F1in UNIV B1 B2) \<and> (\<forall>a\<in>B2. s2 a \<in> F2in UNIV B1 B2))"
comp_converter_id_left: fixes conv :: "('a, 'b, 'c, 'd) converter" shows "1\<^sub>C \<odot> conv = conv"
dres_internal_simps_2: shows "dFAILi = dFAIL"
Sup_countable_SUP: fixes A :: "ereal set" assumes "A \<noteq> {}" shows "\<exists>f. incseq f \<and> range f \<subseteq> A \<and> Sup A = Sup (range f)"
RedFAss: fixes P :: "(char list list \<times> char list exp) prog"   and C :: "char list"   and F :: "char list"   and t :: "ty"   and D :: "char list"   and h :: "heap"   and a :: "nat"   and fs :: "Objects.fields"   and v :: "val"   and l :: "sfields"   and sh :: "sheap"   and b :: "bool" assumes "P \<turnstile> C has F,NonStatic:t in D"   and "h a = \<lfloor>(C, fs)\<rfloor>" shows "P \<turnstile> \<langle>addr a\<bullet>F{D} := Val v,(h, l, sh),b\<rangle> \<rightarrow> \<langle>unit,(h(a \<mapsto> (C, fs((F, D) \<mapsto> v))), l, sh),b\<rangle>"
cdep_SDG_path_cc_SDG_path: fixes sourcenode :: "'a \<Rightarrow> 'b"   and targetnode :: "'a \<Rightarrow> 'b"   and kind :: "'a \<Rightarrow> ('c, 'd, 'e, 'f) edge_kind"   and valid_edge :: "'a \<Rightarrow> bool"   and Entry :: "'b"   and get_proc :: "'b \<Rightarrow> 'f"   and get_return_edges :: "'a \<Rightarrow> 'a set"   and procs :: "('f \<times> 'c list \<times> 'c list) list"   and Main :: "'f"   and Exit :: "'b"   and Def :: "'b \<Rightarrow> 'c set"   and Use :: "'b \<Rightarrow> 'c set"   and ParamDefs :: "'b \<Rightarrow> 'c list"   and ParamUses :: "'b \<Rightarrow> 'c set list"   and n :: "'b SDG_node"   and ns :: "'b SDG_node list"   and n' :: "'b SDG_node" assumes "SDG sourcenode targetnode kind valid_edge Entry get_proc get_return_edges procs Main Exit Def Use ParamDefs ParamUses"   and "SDG.cdep_SDG_path sourcenode targetnode kind valid_edge get_proc get_return_edges procs Exit Def Use ParamDefs ParamUses n ns n'" shows "SDG.call_cdep_SDG_path sourcenode targetnode kind valid_edge get_proc get_return_edges procs Exit Def Use ParamDefs ParamUses n ns n'"
cSup_mono: fixes B :: "'c multiset set"   and A :: "'c multiset set" assumes "B \<noteq> {}"   and "subset_mset.bdd_above A"   and "\<And>b. b \<in> B \<Longrightarrow> \<exists>a\<in>A. b \<subseteq># a" shows "Sup B \<subseteq># Sup A"
b_e_type_br_table: fixes \<C> :: "t_context"   and e :: "b_e"   and ts :: "t list"   and ts' :: "t list"   and "is" :: "nat list"   and i :: "nat" assumes "\<C> \<turnstile> [e] : ts _> ts'"   and "e = Br_table is i" shows "\<exists>ts_c ts''. list_all (\<lambda>i. i < length (label \<C>) \<and> label \<C> ! i = ts'') (is @ [i]) \<and> ts = ts_c @ ts'' @ [T_i32]"
step2: shows "mat (row_length M * length v) (length M) (vec_mat_Tensor v M)"
less_than_char_of_char: fixes x :: "char"   and y :: "char" shows "((x, y) \<in> less_than_char) = (of_char x < of_char y)"
eq_free_eq_subst_type_scheme: fixes sch :: "type_scheme"   and S1 :: "nat \<Rightarrow> typ"   and S2 :: "nat \<Rightarrow> typ" assumes "\<forall>n. n \<in> free_tv sch \<longrightarrow> S1 n = S2 n" shows "$ S1 sch = $ S2 sch"
splits_at_combine_dest: fixes \<NN> :: "symbol set"   and \<TT> :: "symbol set"   and \<RR> :: "(symbol \<times> symbol list) set"   and \<SS> :: "symbol"   and Lex :: "symbol \<Rightarrow> character list \<Rightarrow> nat \<Rightarrow> nat set"   and Sel :: "(symbol \<times> character list) set \<Rightarrow> (symbol \<times> character list) set \<Rightarrow> (symbol \<times> character list) set"   and a :: "symbol list"   and i :: "nat"   and r :: "symbol \<times> symbol list"   and b :: "symbol list"   and \<alpha> :: "symbol list"   and N :: "symbol"   and \<beta> :: "symbol list" assumes "LocalLexing \<NN> \<TT> \<RR> \<SS> Lex Sel"   and "CFG.Derives1 \<NN> \<TT> \<RR> a i r b"   and "splits_at a i \<alpha> N \<beta>" shows "b = \<alpha> @ snd r @ \<beta>"
inv_idemp: fixes l :: "(bool \<times> 'd) list" shows "inv_fg (inv_fg l) = l"
theta: shows "f \<in> \<Theta>(\<lambda>x. eval C x * b x powr e)"
ValD_copy_rec_ValD_copy_lub: shows "fix\<cdot>Continuations.ValD_copy_rec = (ValD_copy_lub, cfun_map\<cdot>ValD_copy_lub\<cdot>ValD_copy_lub)"
eqd_suf2: fixes x :: "'b list"   and y :: "'b list"   and u :: "'b list"   and v :: "'b list" assumes "x \<cdot> y = u \<cdot> v"   and "\<^bold>|x\<^bold>| \<le> \<^bold>|u\<^bold>|" shows "x \<cdot> y\<^sup><\<inverse>v  = u"
star_left_induct_mult_iff: fixes star :: "'c \<Rightarrow> 'c"   and one :: "'c"   and times :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and sup :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and less_eq :: "'c \<Rightarrow> 'c \<Rightarrow> bool"   and less :: "'c \<Rightarrow> 'c \<Rightarrow> bool"   and bot :: "'c"   and x :: "'c"   and y :: "'c" assumes "class.left_kleene_algebra star one times sup less_eq less bot" shows "less_eq (times x y) y = less_eq (times (star x) y) y"
annil: fixes x :: "'a" shows "(zero_class.zero::'a) \<cdot> x = (zero_class.zero::'a)"
minus_ow_def: fixes U :: "'a set"   and minus :: "'a \<Rightarrow> 'a \<Rightarrow> 'a" shows "minus_ow U minus \<equiv> \<forall>a b. a \<in> U \<longrightarrow> b \<in> U \<longrightarrow> minus a b \<in> U"
pprt_neg: fixes x :: "'a" shows "pprt (- x) = - nprt x"
CatExpDist: fixes X :: "'d"   and A :: "('d, 'e, 'f) Category_scheme"   and B :: "('g, 'h, 'i) Category_scheme"   and f :: "('d, 'g, 'e, 'h, 'f, 'i) NatTrans"   and g :: "('d, 'g, 'e, 'h, 'f, 'i) NatTrans" assumes "X \<in> obj\<^bsub>A\<^esub>"   and "f \<approx>>\<^bsub>CatExp A B\<^esub> g" shows "(f ;;\<^bsub>CatExp A B\<^esub> g) $$ X = f $$ X ;;\<^bsub>B\<^esub> (g $$ X)"
abs_eq: fixes xa :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and x :: "'a \<Rightarrow> 'a \<Rightarrow> 'a" assumes "eq_onp overrider xa xa"   and "eq_onp overrider x x" shows "(Abs_scene xa ##\<^sub>S Abs_scene x) = (\<forall>s\<^sub>1 s\<^sub>2. x (xa s\<^sub>1 s\<^sub>2) s\<^sub>2 = xa (x s\<^sub>1 s\<^sub>2) s\<^sub>2)"
null_eqI: fixes n :: "'a" assumes "\<And>f. Right_a.comp n f = n \<and> Right_a.comp f n = n" shows "n = Right_a.null"
dep_proj_dep: fixes PROB :: "(('d, 'e) fmap \<times> ('d, 'f) fmap) set"   and vs :: "'d set"   and v :: "'d"   and v' :: "'d" assumes "dep (prob_proj PROB vs) v v'" shows "dep PROB v v'"
is_pure_assn_def: fixes a :: "assn" shows "is_pure_assn a \<equiv> \<exists>P. a = \<up> P"
phull_Macaulay_list: fixes ps :: "(('x \<Rightarrow>\<^sub>0 nat) \<Rightarrow>\<^sub>0 'b) list" shows "phull (set (punit.Macaulay_list ps)) = phull (set ps)"
cases: fixes sourcenode :: "'a \<Rightarrow> 'b"   and targetnode :: "'a \<Rightarrow> 'b"   and valid_edge :: "'a \<Rightarrow> bool"   and Entry :: "'b"   and a1 :: "'b"   and a2 :: "'b"   and a3 :: "nat" assumes "CFG sourcenode targetnode valid_edge Entry"   and "CFG.distance sourcenode targetnode valid_edge a1 a2 a3" obtains n :: "'b" and as :: "'a list" and n' :: "'b" and x :: "nat" where "a1 = n" and "a2 = n'" and "a3 = x" and "CFG.path sourcenode targetnode valid_edge n as n'" and "length as = x" and "\<forall>as'. CFG.path sourcenode targetnode valid_edge n as' n' \<longrightarrow> x \<le> length as'"
obind_rule: fixes m :: "'d option"   and Q :: "'d \<Rightarrow> bool"   and f :: "'d \<Rightarrow> 'e option"   and P :: "'e \<Rightarrow> bool" assumes "ospec m Q"   and "\<And>r. Q r \<Longrightarrow> ospec (f r) P" shows "ospec (m \<bind> f) P"
biimpci_def: fixes a :: "nat"   and b :: "nat"   and s :: "bddi" shows "biimpci a b s \<equiv> notci b s \<bind> (\<lambda>(nb, s). iteci_lu a b nb s)"
berlekamp_resulting_mat_i_def: fixes p :: "int"   and ff_ops :: "'a arith_ops_record"   and u :: "'a list" shows "berlekamp_resulting_mat_i p ff_ops u = (let Q = berlekamp_mat_i p ff_ops u; n = dim_row Q; QI = mat n n (\<lambda>(i, j). if i = j then arith_ops_record.minus ff_ops (Q $$ (i, j)) (arith_ops_record.one ff_ops) else Q $$ (i, j)) in gauss_jordan_single_i ff_ops QI\<^sup>T)"
env_no_step: fixes s :: "'a list"   and c :: "'a list multiset"   and w :: "('b, 'c) label list list"   and s' :: "'a list"   and c' :: "'a list multiset"   and fg :: "('a, 'b, 'c, 'd, 'e) flowgraph_rec_scheme" assumes "((s, c), w, s', c') \<in> trcl (ntrs fg)" obtains csp :: "'a list multiset" where "c' = csp + c"
hom_ifte: fixes f :: "'b \<Rightarrow> 'a"   and x :: "'b formula"   and y :: "'b formula"   and z :: "'b formula" shows "hom f (ifte x y z) = ifte (hom f x) (hom f y) (hom f z)"
scale_zero_right: fixes a :: "'a \<Rightarrow>\<^sub>0 'c" shows "a \<odot> 0 = 0"
mem_sphere_0: fixes x :: "'b"   and e :: "real" shows "(x \<in> sphere (0::'b) e) = (norm x = e)"
is_lub_const: fixes below :: "'b \<Rightarrow> 'b \<Rightarrow> bool"   and c :: "'b" assumes "class.po below" shows "po.is_lub below (range (\<lambda>x. c)) c"
simps_4: fixes v :: "(int \<times> int) set set"   and va :: "(int \<times> int) set set"   and vb :: "int"   and xs :: "((int \<times> int) set set, int) Combinators list" shows "wellformed_policy2 (AllowPortFromTo v va vb # xs) = ((\<forall>c a b. c = DenyAllFromTo a b \<and> c \<in> set xs \<longrightarrow> dom (C (AllowPortFromTo v va vb)) \<inter> dom (C c) = {}) \<and> wellformed_policy2 xs)"
approx_chain: fixes p :: "'a upred"   and v :: "(nat, 'a) uexpr" shows "\<Or>range (\<lambda>n. \<lceil>p \<and> v <\<^sub>u \<guillemotleft>n\<guillemotright>\<rceil>\<^sub><) = \<lceil>p\<rceil>\<^sub><"
\<pi>_pos_iff: fixes x :: "real" shows "(0 < primes_pi x) = (2 \<le> x)"
vec_upd_def: fixes s :: "('b, 'c) vec"   and i :: "'c"   and a :: "'b" shows "vec_upd s i a = (\<chi>j. ((($) s)(i := a)) j)"
simps_2: fixes l :: "'b tree"   and x :: "'b"   and d :: "bool"   and r :: "'b tree" shows "all_distinct (Node l x d r) = ((d \<or> x \<notin> set_of l \<and> x \<notin> set_of r) \<and> set_of l \<inter> set_of r = {} \<and> all_distinct l \<and> all_distinct r)"
insert_DiffM2: fixes x :: "'c"   and M :: "'c multiset" assumes "x \<in># M" shows "M - {#x#} + {#x#} = M"
GB_image_monic: fixes G :: "('a \<Rightarrow>\<^sub>0 'c) set" shows "punit.is_Groebner_basis (punit.monic ` G) = punit.is_Groebner_basis G"
poly_linear_exp_linear_factors_rev: fixes b :: "'b"   and as :: "'b list" shows "[:b, 1::'b:] ^ length (filter ((=) b) as) dvd (\<Prod>a\<leftarrow>as. [:a, 1::'b:])"
lower_semilattice_axioms_def: fixes L :: "('c, 'd) gorder_scheme" shows "lower_semilattice_axioms L \<equiv> \<forall>x y. x \<in> carrier L \<longrightarrow> y \<in> carrier L \<longrightarrow> (\<exists>s. is_glb L s {x, y})"
lin_dep_def: fixes S :: "'a vec set" shows "lin_dep S = (\<exists>A a v. finite A \<and> A \<subseteq> S \<and> True \<and> lincomb a A = 0\<^sub>v n \<and> v \<in> A \<and> a v \<noteq> (0::'a))"
hyps: fixes \<sigma> :: "'state" shows "small_nstep P \<sigma> (Suc n) = {\<sigma>2. \<exists>\<sigma>1. \<sigma>1 \<in> small P \<sigma> \<and> \<sigma>2 \<in> small_nstep P \<sigma>1 n}"
Par_Wbis_discrL2: fixes c2 :: "('test, 'atom) com"   and d :: "('test, 'atom) com"   and c1 :: "('test, 'atom) com" assumes "c2 \<approx>w d"   and "discr c1" shows "c1 | c2 \<approx>w d"
elims_1: fixes x :: "nat \<times> nat list"   and xa :: "nat \<times> cell list \<times> cell list"   and xb :: "cell list"   and y :: "bool" assumes "inv_check_left_moving_on_leftmost x xa xb = y" obtains as :: "nat" and lm :: "nat list" and s :: "nat" and l :: "cell list" and r :: "cell list" and ires :: "cell list" where "x = (as, lm)" and "xa = (s, l, r)" and "xb = ires" and "y = (\<exists>rn. l = ires \<and> r = [Bk, Bk] @ <lm> @ Bk \<up> rn)"
simps_2: fixes sourcenode :: "'a \<Rightarrow> 'b"   and targetnode :: "'a \<Rightarrow> 'b"   and kind :: "'a \<Rightarrow> ('c, 'd, 'e, 'f) edge_kind"   and valid_edge :: "'a \<Rightarrow> bool"   and Entry :: "'b"   and get_proc :: "'b \<Rightarrow> 'f"   and get_return_edges :: "'a \<Rightarrow> 'a set"   and procs :: "('f \<times> 'c list \<times> 'c list) list"   and Main :: "'f"   and Exit :: "'b"   and Def :: "'b \<Rightarrow> 'c set"   and Use :: "'b \<Rightarrow> 'c set"   and ParamDefs :: "'b \<Rightarrow> 'c list"   and ParamUses :: "'b \<Rightarrow> 'c set list"   and m :: "'b"   and x :: "nat" assumes "SDG sourcenode targetnode kind valid_edge Entry get_proc get_return_edges procs Main Exit Def Use ParamDefs ParamUses" shows "SDG.valid_SDG_node sourcenode targetnode kind valid_edge procs (Formal_in (m, x)) = (\<exists>a Q r p fs ins outs. valid_edge a \<and> kind a = Q:r\<hookrightarrow>\<^bsub>p\<^esub>fs \<and> targetnode a = m \<and> (p, ins, outs) \<in> set procs \<and> x < length ins)"
append_is_polynomial: fixes R :: "('c, 'd) ring_scheme"   and K :: "'c set"   and p :: "'c list"   and n :: "nat" assumes "ring R"   and "subring K R"   and "polynomial\<^bsub>R\<^esub> K p"   and "p \<noteq> []" shows "polynomial\<^bsub>R\<^esub> K (p @ replicate n \<zero>\<^bsub>R\<^esub>)"
simps: fixes n :: "nat" shows "local.log n = (if n < 2 then 0 else Suc (local.log (n div 2)))"