hcju/isabelleps huggingface dataset:
weak_ring_morphism_is_hom: fixes f :: "'a \<Rightarrow> 'd"   and I :: "'a set" assumes "weak_ring_morphism f I R" shows "f \<in> ring_hom R (image_ring f R)"
small_nstep_Rec: fixes P :: "'prog"   and \<sigma> :: "'state"   and n :: "nat" shows "small_nstep P \<sigma> (Suc n) = {\<sigma>2. \<exists>\<sigma>1. \<sigma>1 \<in> small_nstep P \<sigma> n \<and> \<sigma>2 \<in> small P \<sigma>1}"
fps_compose_sub_distrib: fixes a :: "'a fps"   and b :: "'a fps"   and c :: "'a fps" shows "a - b oo c = (a oo c) - (b oo c)"
plus_stream_def: fixes x :: "'b stream"   and y :: "'b stream" shows "x + y = Applicative.ap (Applicative.ap (pure (+)) x) y"
eq_iff_2: fixes fmla1 :: "fmla"   and fmla2 :: "fmla"   and fmla1a :: "fmla"   and fmla2a :: "fmla" shows "(fmla1 OR fmla2 = fmla1a OR fmla2a) = (fmla1 = fmla1a \<and> fmla2 = fmla2a)"
cont_true_cont_3: fixes v :: "i"   and p :: "\<o>" shows "[ContingentlyTrue p \<^bold>\<equiv> ContingentlyFalse (p\<^sup>-) in v]"
pn_props_def: fixes ps :: "'d ltlr set" shows "pn_props ps \<equiv> FOREACH\<^bsup>\<lambda>it (P, N). P = {p. prop\<^sub>r(p) \<in> ps - it} \<and> N = {p. nprop\<^sub>r(p) \<in> ps - it}\<^esup> ps (\<lambda>p (P, N). case p of prop\<^sub>r(p) \<Rightarrow> RETURN (insert p P, N) | nprop\<^sub>r(p) \<Rightarrow> RETURN (P, insert p N) | _ \<Rightarrow> RETURN (P, N)) ({}, {})"
l_cancel: fixes G :: "('c, 'd) monoid_scheme"   and c :: "'c"   and a :: "'c"   and b :: "'c" assumes "monoid_cancel G"   and "c \<otimes>\<^bsub>G\<^esub> a = c \<otimes>\<^bsub>G\<^esub> b"   and "a \<in> carrier G"   and "b \<in> carrier G"   and "c \<in> carrier G" shows "a = b"
can_occur_Recv: fixes i :: "nat"   and p :: "'p"   and q :: "'p"   and s :: "'s"   and s' :: "'s"   and m :: "'m"   and c :: "('p, 's, 'm) configuration" assumes "can_occur (Recv i p q s s' m) c" shows "states c p = s \<and> channel i = Some (q, p) \<and> (\<exists>xs. msgs c i = Msg m # xs) \<and> recv i p q s s' m"
assms: fixes x :: "name" assumes "x |\<in>| frees t" shows "fmlookup \<Gamma>\<^sub>1 x = fmlookup \<Gamma>\<^sub>2 x"
add_in_gen_ideal: fixes x :: "'a"   and a :: "'a"   and b :: "'a" assumes "x \<in> R"   and "a \<in> \<langle>x\<rangle>"   and "b \<in> \<langle>x\<rangle>" shows "a + b \<in> \<langle>x\<rangle>"
Lem: fixes \<Gamma> :: "'e \<Rightarrow> ('f, 'e, 'g) com option"   and \<Theta> :: "('f set \<times> 'e \<times> 'f set \<times> 'f set) set"   and F :: "'g set"   and P' :: "'d \<Rightarrow> 'f set"   and c :: "('f, 'e, 'g) com"   and Q' :: "'d \<Rightarrow> 'f set"   and A' :: "'d \<Rightarrow> 'f set"   and P :: "'f set"   and Q :: "'f set"   and A :: "'f set"   and x :: "'h" assumes "\<forall>Z. \<Gamma>,\<Theta>\<turnstile>\<^sub>t\<^bsub>/F\<^esub> (P' Z) c (Q' Z),(A' Z)"   and "P \<subseteq> {s. \<exists>Z. s \<in> P' Z \<and> Q' Z \<subseteq> Q \<and> A' Z \<subseteq> A}" shows "\<Gamma>,\<Theta>\<turnstile>\<^sub>t\<^bsub>/F\<^esub> P lem x c Q,A"
rep_eq: shows "Rep_float topfloat = (0, - 1 - 1, 2 ^ LENGTH('b) - 1)"
surjective_pairing: fixes t :: "'c \<times> 'd" shows "t = (fst t, snd t)"
slim_triangle: fixes dist :: "'c \<Rightarrow> 'c \<Rightarrow> real"   and uniformity :: "('c \<times> 'c) filter"   and "open" :: "'c set \<Rightarrow> bool"   and deltaG :: "'c itself \<Rightarrow> real"   and Gxy :: "'c set"   and x :: "'c"   and y :: "'c"   and Gxz :: "'c set"   and z :: "'c"   and Gyz :: "'c set" assumes "class.Gromov_hyperbolic_space dist uniformity open deltaG"   and "geodesic_segment_between Gxy x y"   and "geodesic_segment_between Gxz x z"   and "geodesic_segment_between Gyz y z" shows "\<exists>w. infdist w Gxy \<le> 4 * deltaG TYPE('c) \<and> infdist w Gxz \<le> 4 * deltaG TYPE('c) \<and> infdist w Gyz \<le> 4 * deltaG TYPE('c) \<and> dist w x = Gromov_product_at x y z \<and> w \<in> Gxy"
v2: shows "v = lt (q g2 \<odot> g2)"
il_2: shows "real_of_rat (local.initial_lower_bound l) \<le> root n (real_of_1 (p, l, r))"
hd_\<gamma>a_lt_\<delta>a: shows "head_\<omega> \<gamma>a < head_\<omega> \<delta>a"
assms_2: shows "\<forall>x. x \<notin> A \<longrightarrow> p x = x"
map_def: shows "\<ll>'.map = transformation_by_components.map (\<cdot>) (\<cdot>) local.map (\<lambda>a. local.inv (\<ll> a))"
affine_parallel_subspace: fixes S :: "'a set" assumes "affine S"   and "S \<noteq> {}" shows "\<exists>!L. subspace L \<and> affine_parallel S L"
assigned_def: fixes V :: "char list"   and e :: "expr" shows "assigned V e \<equiv> \<exists>v e'. e = V:=Val v;; e'"
rangew2: shows "sint (SCAST(32 \<rightarrow> 64) w2) \<in> {- (2 ^ 31)..2 ^ 31}"
execute_operator_sas_plus_effect_ii: fixes s :: "'c \<Rightarrow> 'd option"   and op :: "('c, 'd) sas_plus_operator"   and v :: "'c" assumes "is_operator_applicable_in s op"   and "\<forall>(v', a')\<in>set (effect_of op). v' \<noteq> v" shows "(s \<then>\<^sub>+ op) v = s v"
der_g: shows "(g has_derivative (\<lambda>x. x * g' a)) (at a within S)"
bounds: shows "bdd_below (range (\<lambda>i. SOME \<delta>. 0 < \<delta> \<and> (\<forall>x2. x2 \<noteq> x1 \<and> dist x2 x1 < \<delta> \<longrightarrow> dist (f i x2) (f i x1) < \<epsilon> / real CARD('a))))"
carrier_coeffE: fixes P :: "'d multiset \<Rightarrow> 'a"   and m :: "'d multiset" assumes "carrier_coeff P" shows "P m \<in> carrier R"
mk_fun_dest_fun: fixes T :: "Unary_PCF.type" shows "dest_fun T \<rightarrow>\<rightarrow> \<B> = T"
ide_map\<^sub>0_obj: fixes a :: "'c" assumes "C.obj a" shows "D.ide (\<rho>\<^sub>0 a)"
assms_3: fixes r :: "'a" assumes "P r" shows "f r = g r"
cblinfun_extension_apply: fixes S :: "'c set"   and f :: "'c \<Rightarrow> 'd"   and v :: "'c" assumes "cblinfun_extension_exists S f"   and "v \<in> S" shows "cblinfun_extension S f *\<^sub>V v = f v"
assms: shows "of_nat (card G) \<noteq> (0::'f)"
S': shows "S' \<in> carrier_mat (m - 1) (n - 1)"
pr_key_secrecy_aux: fixes evs :: "event list"   and S :: "agent \<times> nat \<times> nat \<Rightarrow> session"   and A :: "msg set"   and U :: "msg set"   and m :: "nat"   and n :: "nat"   and run :: "nat"   and s :: "rat"   and a :: "rat"   and b :: "rat"   and c :: "rat"   and f :: "rat"   and X :: "agent"   and g :: "rat" assumes "(evs, S, A, U) \<in> protocol"   and "User m \<noteq> Spy"   and "NonceS (S (User m, n, run)) = Some s"   and "IntMapK (S (User m, n, run)) = Some a"   and "ExtMapK (S (User m, n, run)) = Some b"   and "IntAgrK (S (User m, n, run)) = Some c"   and "ExtAgrK (S (User m, n, run)) = Some f"   and "Says n run 4 X (User m) (Crypt (sesK (c * f)) \<lbrace>pubAK (c * (s + a * b)), Auth_Data g b, pubAK g, Crypt (priSK CA) (Hash (pubAK g))\<rbrace>) \<in> set evs" shows "Key (sesK (c * f)) \<notin> A"
sum_dcharacters: fixes x :: "nat" shows "(\<Sum>\<chi>\<in>dcharacters n. \<chi> x) = (if [x = 1] (mod n) then of_nat (totient n) else 0)"
natural_transformation_axioms: shows "natural_transformation (\<cdot>\<^sub>D) (\<cdot>\<^sub>D) (\<lambda>f. f \<otimes>\<^sub>D \<I>\<^sub>D) (\<lambda>f. f \<otimes>\<^sub>D \<I>\<^sub>D) (\<lambda>f. f \<otimes>\<^sub>D \<I>\<^sub>D)"
that: fixes F :: "'a set" assumes "F facet_of p" shows "thesis"
arr_eqI: fixes t :: "('a \<Rightarrow> 'b, 'a \<Rightarrow> 'b) concrete_category.arr"   and t' :: "('a \<Rightarrow> 'b, 'a \<Rightarrow> 'b) concrete_category.arr" assumes "arr t"   and "arr t'"   and "Dom t = Dom t'"   and "Cod t = Cod t'"   and "Map t = Map t'" shows "t = t'"
cod_tensor: fixes f :: "'c local.term set"   and g :: "'c local.term set" assumes "arr f"   and "arr g" shows "cod (f \<otimes> g) = cod f \<otimes> cod g"
Chn_RHS_eq: shows "Chn RHS = \<lbrakk>\<lbrakk>TfHgh_HfHgh.chine\<rbrakk>\<rbrakk> \<odot> \<lbrakk>\<lbrakk>TfTgh_TfHgh.chine\<rbrakk>\<rbrakk> \<odot> tuple_ABC'"
sc_bound: fixes P :: "'c \<Rightarrow> real"   and c :: "real" assumes "sound P"   and "0 \<le> c" shows "c * bound_of P = bound_of (\<lambda>x. c * P x)"
neg_0_le_iff_le: fixes a :: "'a" shows "((0::'a) \<le> - a) = (a \<le> (0::'a))"
nn_cond_exp_charact: fixes f :: "'a \<Rightarrow> ennreal"   and g :: "'a \<Rightarrow> ennreal" assumes "\<And>A. A \<in> sets F \<Longrightarrow> set_nn_integral M A f = set_nn_integral M A g"   and "f \<in> borel_measurable M"   and "g \<in> borel_measurable F" shows "AE x in M. g x = nn_cond_exp M F f x"
P2: shows "Bet A' B' D' \<and> Cong B' D' A' B'"
trans: fixes x :: "(('a, 'b) T\<^sub>m, 'b T\<^sub>h, 'c, 'd) F\<^sub>m"   and y :: "(('a, 'b) T\<^sub>m, 'b T\<^sub>h, 'c, 'd) F\<^sub>m"   and z :: "(('a, 'b) T\<^sub>m, 'b T\<^sub>h, 'c, 'd) F\<^sub>m" assumes "blinding_of_F (root_hash_T rha) (blinding_of_T rha boa) rhb bob x y"   and "blinding_of_F (root_hash_T rha) (blinding_of_T rha boa) rhb bob y z"   and "x \<in> {x. set1_F\<^sub>m x \<subseteq> {x. set1_T\<^sub>m x \<subseteq> A} \<and> set3_F\<^sub>m x \<subseteq> B}" shows "blinding_of_F (root_hash_T rha) (blinding_of_T rha boa) rhb bob x z"
NextRecvUpd'_preserves_inv_init_imp_prop_safe: fixes c0 :: "('b, 't, 'loc) Combined.configuration"   and c1 :: "('b, 't, 'loc) Combined.configuration"   and p :: "'b"   and q :: "'b" assumes "cri.InvMsgInGlob (exchange_config c0)"   and "inv_init_imp_prop_safe c0"   and "InvGlobPointstampsEq c0"   and "NextRecvUpd' c0 c1 p q" shows "inv_init_imp_prop_safe c1"
simps_3: fixes x :: "octo"   and y :: "octo" shows "Im2 (x + y) = Im2 x + Im2 y"
integrable_scaleR_left: fixes c :: "'c"   and M :: "'d measure"   and f :: "'d \<Rightarrow> real" assumes "c \<noteq> (0::'c) \<Longrightarrow> integrable M f" shows "integrable M (\<lambda>x. f x *\<^sub>R c)"
test_inf_left_below: fixes x :: "'a"   and y :: "'a" assumes "test x" shows "x \<sqinter> y \<le> y"
rt_strictly_fresherI: fixes i :: "nat"   and rt1 :: "nat \<Rightarrow> (nat \<times> k \<times> f \<times> nat \<times> nat \<times> nat set) option"   and rt2 :: "nat \<Rightarrow> (nat \<times> k \<times> f \<times> nat \<times> nat \<times> nat set) option" assumes "rt1 \<sqsubseteq>\<^bsub>i\<^esub> rt2"   and "\<not> rt1 \<approx>\<^bsub>i\<^esub> rt2" shows "rt1 \<sqsubset>\<^bsub>i\<^esub> rt2"
seq1: fixes c1 :: "('exp, 'id) MWLfCom"   and m :: "'id \<Rightarrow> 'val"   and m' :: "'id \<Rightarrow> 'val"   and c2 :: "('exp, 'id) MWLfCom" assumes "SRabbr c1 m [] m'" shows "SRabbr (c1;c2) m [c2] m'"
init_cs_def: fixes init :: "('c \<times> 'a) list \<Rightarrow> 'b"   and tons :: "'d \<Rightarrow> ('c \<times> 'a) list"   and cs :: "'d" shows "init_cs init tons cs = (let tons_cs = tons cs in (map snd tons_cs, init tons_cs))"
H: fixes x :: "nat" assumes "x \<in># dom_m A" obtains p :: "(char list multiset \<times> int) multiset" where "(the (fmlookup A x), p) \<in> fully_unsorted_poly_rel" and "(p, the (fmlookup B x)) \<in> mset_poly_rel"
verts_in_translation_finite_3: fixes X :: "'a allegorical_term" shows "0 \<in> vertices (translation X)"
le_zero_eq: fixes plus :: "'d \<Rightarrow> 'd \<Rightarrow> 'd"   and zero :: "'d"   and less_eq :: "'d \<Rightarrow> 'd \<Rightarrow> bool"   and less :: "'d \<Rightarrow> 'd \<Rightarrow> bool"   and n :: "'d" assumes "class.canonically_ordered_monoid_add plus zero less_eq less" shows "less_eq n zero = (n = zero)"
rfr_disc_equity_market_axioms: shows "rfr_disc_equity_market M F Mkt r risk_free_asset"
simps_2: fixes p :: "fm"   and q :: "fm" shows "\<delta> (Or p q) = lcm (\<delta> p) (\<delta> q)"
prems_3: shows "\<mu>_bound_row_inner fs i (Suc j)"
even_mod_2_iff: fixes a :: "'a" shows "even (a mod (2::'a)) = even a"
inject_2: fixes x2 :: "nat"   and y2 :: "nat" shows "(Regions.intv.Intv x2 = Regions.intv.Intv y2) = (x2 = y2)"
true_clss_mono: fixes DD :: "'a literal multiset set"   and CC :: "'a literal multiset set"   and I :: "'a set" assumes "DD \<subseteq> CC"   and "I \<Turnstile>s CC" shows "I \<Turnstile>s DD"
l_set_disconnected_nodes_get_ancestors_def: fixes set_disconnected_nodes_locs :: "(_) document_ptr \<Rightarrow> ((_) heap, exception, unit) prog set"   and get_ancestors_locs :: "((_) heap \<Rightarrow> (_) heap \<Rightarrow> bool) set" shows "l_set_disconnected_nodes_get_ancestors set_disconnected_nodes_locs get_ancestors_locs \<equiv> \<forall>ptr h h'. \<forall>w\<in>set_disconnected_nodes_locs ptr. h \<turnstile> w \<rightarrow>\<^sub>h h' \<longrightarrow> (\<forall>r\<in>get_ancestors_locs. r h h')"
integrable_imp_measurable_weak: fixes S :: "'c set"   and f :: "'c \<Rightarrow> 'd" assumes "S \<in> sets lebesgue"   and "f integrable_on S" shows "f \<in> borel_measurable (lebesgue_on S)"
one_arg_imp_Hd: fixes s :: "('a, 'b) tm"   and t :: "('a, 'b) tm"   and u :: "('a, 'b) tm" assumes "num_args s = 1"   and "s = App t u" shows "t = Hd (head t)"
simps_2: fixes f :: "String.literal \<Rightarrow> tm list \<Rightarrow> 'a"   and x1 :: "String.literal"   and x2 :: "tm list" shows "(case Rl x1 x2 of Rl x xa \<Rightarrow> f x xa) = f x1 x2"
lessE: fixes a :: "'a"   and b :: "'a" assumes "order.greater b a" obtains c :: "'a" where "b = a + c" and "c \<noteq> (0::'a)"
approx_add: fixes a :: "'c star"   and b :: "'c star"   and c :: "'c star"   and d :: "'c star" assumes "a \<approx> b"   and "c \<approx> d" shows "a + c \<approx> b + d"
inner_scaleR_left: fixes r :: "'a"   and x :: "'b"   and y :: "'b" shows "inner (scale r x) y = r * inner x y"
noAugPath_iff_maxFlow: shows "(\<not> Ex isAugmentingPath) = isMaxFlow f"
div_fact: shows "even (\<Lambda> * (\<Lambda> - 1))"
simps_2: fixes v :: "nat" shows "var (Neg v) = v"
to_est_append: fixes A :: "('a, 'b) strand_step list"   and B :: "('a, 'b) strand_step list" shows "to_est (A @ B) = to_est A @ to_est B"
list_emb_prefix: fixes P :: "'a \<Rightarrow> 'a \<Rightarrow> bool"   and xs :: "'a list"   and ys :: "'a list"   and zs :: "'a list" assumes "list_emb P xs ys" shows "list_emb P xs (ys @ zs)"
transitive_closure_trans_7: fixes a :: "'b"   and b :: "'b"   and r :: "('b \<times> 'b) set"   and c :: "'b" assumes "(a, b) \<in> r"   and "(b, c) \<in> r\<^sup>*" shows "(a, c) \<in> r\<^sup>*"
partition_on_eq_implies_eq_carrier: fixes A :: "'a set"   and Q :: "'a set set"   and B :: "'a set" assumes "partition_on A Q"   and "partition_on B Q" shows "A = B"
read_only_share_all_until_volatile_write_unacquired: fixes ts :: "('b \<times> instr list \<times> (nat \<Rightarrow> nat option) \<times> 'b memref list \<times> bool \<times> nat set \<times> (nat \<Rightarrow> bool option)) list"   and \<S> :: "nat \<Rightarrow> bool option"   and a :: "nat" assumes "ownership_distinct ts"   and "read_only_unowned \<S> ts"   and "weak_sharing_consis ts"   and "\<forall>i<length ts. let (uu_, uu_, uu_, sb, uu_, \<O>, \<R>) = ts ! i in a \<notin> all_acquired (takeWhile (Not \<circ> is_volatile_Write\<^sub>s\<^sub>b) sb)"   and "a \<in> read_only \<S>" shows "a \<in> read_only (share_all_until_volatile_write ts \<S>)"
snd_def: fixes prod :: "'f \<times> 'e" shows "snd prod = (case prod of (x1, x2) \<Rightarrow> x2)"
divide_nonneg_nonpos: fixes divide :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and inverse :: "'b \<Rightarrow> 'b"   and 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"   and less_eq :: "'b \<Rightarrow> 'b \<Rightarrow> bool"   and less :: "'b \<Rightarrow> 'b \<Rightarrow> bool"   and sgn :: "'b \<Rightarrow> 'b"   and abs :: "'b \<Rightarrow> 'b"   and x :: "'b"   and y :: "'b" assumes "class.linordered_field divide inverse times one plus zero minus uminus less_eq less sgn abs"   and "less_eq zero x"   and "less_eq y zero" shows "less_eq (divide x y) zero"
of_nat_0_eq_iff: fixes one :: "'d"   and times :: "'d \<Rightarrow> 'd \<Rightarrow> 'd"   and plus :: "'d \<Rightarrow> 'd \<Rightarrow> 'd"   and zero :: "'d"   and n :: "nat" assumes "class.semiring_char_0 one times plus zero" shows "(zero = semiring_1.of_nat one plus zero n) = (0 = n)"
simps_2: shows "eval_ternary_Imp TernaryTrue TernaryFalse = TernaryFalse"
simple_merge_option: fixes a :: "'a option"   and b :: "'a option" shows "(merge_option (a, b) = None) = (a = None \<and> b = None)"
c: shows "\<forall>x y. T (i (i (n x) (n y)) (i y x))"
mod_2_eq_odd: fixes plus :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and minus :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and zero :: "'c"   and times :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and one :: "'c"   and divide :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and modulo :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and a :: "'c" assumes "class.semiring_parity plus minus zero times one divide modulo" shows "modulo a (numeral.numeral one plus (num.Bit0 num.One)) = zero_neq_one.of_bool one zero (\<not> dvd.dvd times (numeral.numeral one plus (num.Bit0 num.One)) a)"
to_Bonk_Schramm_extension_isometry: shows "isometry_on UNIV to_Bonk_Schramm_extension"
im_sheaf_morphisms_def: fixes U :: "'a set"   and V :: "'a set" shows "im_sheaf_morphisms U V \<equiv> \<rho> (identity S \<^sup>\<inverse> S U) (identity S \<^sup>\<inverse> S V)"
nonzero_divide_mult_cancel_left: fixes divide :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and inverse :: "'b \<Rightarrow> 'b"   and 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"   and a :: "'b"   and b :: "'b" assumes "class.field divide inverse times one plus zero minus uminus"   and "a \<noteq> zero" shows "divide a (times a b) = divide one b"
sel_2: fixes x1 :: "('e \<times> 'd \<times> 'd) set"   and x2 :: "'d set" shows "vertices (LG x1 x2) = x2"
hyps: fixes x :: "'b list" assumes "P \<epsilon> \<epsilon>"   and "\<And>x xs. P (xs \<cdot> [x]) \<epsilon>"   and "\<And>y ys. P \<epsilon> (ys \<cdot> [y])"   and "\<And>x xs y ys. P xs ys \<Longrightarrow> P (xs \<cdot> [x]) (ys \<cdot> [y])" shows "P xs x"
simps_15: fixes e :: "expr"   and A :: "char list set option" shows "\<D> (throw e) A = \<D> e A"
case_1: fixes f1 :: "'b"   and f2 :: "'c \<Rightarrow> 'c llist \<Rightarrow> 'b" shows "(case LNil of LNil \<Rightarrow> f1 | LCons x xa \<Rightarrow> f2 x xa) = f1"
dom_eqI': fixes a :: "'a"   and f :: "'a" assumes "a \<in> S.domains f" shows "a = S.dom f"
bigtheta_trans1': fixes f :: "'a \<Rightarrow> 'b"   and F :: "'a filter"   and g :: "'a \<Rightarrow> 'b"   and h :: "'a \<Rightarrow> 'b" assumes "f \<in> o[F](g)"   and "h \<in> \<Theta>[F](g)" shows "f \<in> o[F](h)"
between_swap: fixes A :: "'b"   and B :: "'b"   and X :: "'b"   and Y :: "'b" assumes "between (A, B) X"   and "between (A, B) Y" shows "between (X, B) Y = between (A, Y) X"
restrict_def: fixes f :: "'b \<Rightarrow> 'c"   and A :: "'b set" shows "restrict f A = (\<lambda>x. if x \<in> A then f x else undefined)"
simps_1: fixes bezout :: "'b \<Rightarrow> 'b \<Rightarrow> 'b \<times> 'b \<times> 'b \<times> 'b \<times> 'b"   and P :: "'b mat"   and A :: "'b mat"   and Q :: "'b mat" shows "diagonal_to_Smith_aux_PQ_JNF [] bezout (P, A, Q) = (P, A, Q)"
UN_I: fixes a :: "'b"   and A :: "'b set"   and b :: "'c"   and B :: "'b \<Rightarrow> 'c set" assumes "a \<in> A"   and "b \<in> B a" shows "b \<in> \<Union> (\<P> B A)"
distr_distr: fixes g :: "'a \<Rightarrow> 'b"   and N :: "'a measure"   and L :: "'b measure"   and f :: "'c \<Rightarrow> 'a"   and M :: "'c measure" assumes "g \<in> N \<rightarrow>\<^sub>M L"   and "f \<in> M \<rightarrow>\<^sub>M N" shows "distr (distr M N f) L g = distr M L (g \<circ> f)"
det_nfa_def: fixes A :: "bool list bdd list \<times> bool list" shows "det_nfa A = (let (bdd, qss) = subset_dfs A (nfa_startnode A) in (map (\<lambda>qs. bdd_map (\<lambda>qs. the (bdd_lookup bdd qs)) (subsetbdd (fst A) qs (nfa_emptybdd (length qs)))) qss, map (nfa_accepting A) qss))"
arg_min_nat_le: fixes P :: "'c \<Rightarrow> bool"   and x :: "'c"   and m :: "'c \<Rightarrow> nat" assumes "P x" shows "m (arg_min m P) \<le> m x"
B: shows "ipurge_tr_rev_aux I D U (x' # xs) = x # ws"
simps_8: fixes f :: "'b \<Rightarrow> 'a" shows "list.map f [] = []"
v'_def: shows "v' = (\<lambda>x. (real n + 1 / 2) * x powr (real n - 1 / 2))"
final: fixes C :: "'d \<Rightarrow> bool"   and r :: "'d"   and B :: "'d \<Rightarrow> 'd option" assumes "\<not> C r" shows "(Some r, Some r) \<in> option_while' C B"
cases: fixes x :: "'a tree23s" obtains t1 :: "'a tree23" and a :: "'a" and t2 :: "'a tree23" where "x = TTs t1__ a__ (T t2__)"   | t1 :: "'a tree23" and a :: "'a" and t2 :: "'a tree23" and b :: "'a" and t3 :: "'a tree23" where "x = TTs t1a__ aa__ (TTs t2a__ b__ (T t3))"   | t1 :: "'a tree23" and a :: "'a" and t2 :: "'a tree23" and b :: "'a" and v :: "'a tree23" and va :: "'a" and vb :: "'a tree23s" where "x = TTs t1 a (TTs t2 b (TTs v__ va vb))"   | v :: "'a tree23" where "x = T v"
find_zip_4: fixes cond :: "'a \<Rightarrow> bool"   and p :: "'a"   and v :: "'a list"   and s :: "'a"   and x :: "'a"   and y :: "'a" assumes "find (cond \<circ> snd) (zip (p # v) (v @ [s])) = Some (x, y)"   and "v \<noteq> []" shows "y = s \<or> y \<in> set v"
int_add_eq: fixes x :: "int"   and y :: "int" shows "x \<oplus>\<^bsub>\<Z>\<^esub> y = x + y"
oreturn_rule: fixes P :: "'d \<Rightarrow> bool"   and r :: "'d" assumes "P r" shows "ospec (Some r) P"
finfun_update_eqvt: fixes p :: "perm"   and f :: "('c, 'd) finfun"   and a :: "'c"   and b :: "'d" shows "p \<bullet> finfun_update f a b = finfun_update (p \<bullet> f) (p \<bullet> a) (p \<bullet> b)"
finite_init_pred_symvars: fixes prb :: "('d, 'e, 'f) pre_RedBlack" assumes "finite_RedBlack prb" shows "\<forall>e\<in>pred (init_conf prb). finite (Bexp.vars e)"
prod_def: fixes C :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and pr0 :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and pr1 :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and f :: "'b"   and g :: "'b" assumes "elementary_category_with_binary_products C pr0 pr1" shows "elementary_category_with_binary_products.prod C pr0 pr1 f g \<equiv> elementary_category_with_binary_products.tuple C pr0 pr1 (C f (pr1 (partial_magma.dom C f) (partial_magma.dom C g))) (C g (pr0 (partial_magma.dom C f) (partial_magma.dom C g)))"
Suc_num_args: fixes t :: "('c, 'd) tm" assumes "is_App t" shows "Suc (num_args (fun t)) = num_args t"
path_def: fixes x :: "'a" shows "path x \<equiv> connected x \<and> is_p_fun x \<and> is_inj x"
c: shows "Rep_matrix A J I \<noteq> Rep_matrix B J I"
info_2: fixes x :: "real_alg_2"   and y :: "real_alg_2" assumes "invariant_2 x"   and "invariant_2 y" shows "(info_2 x = info_2 y) = (real_of_2 x = real_of_2 y)"
comp_in_homI: fixes f :: "'a"   and a :: "'a"   and b :: "'a"   and g :: "'a"   and c :: "'a" assumes "\<guillemotleft>f : a \<rightarrow>\<^sub>C b\<guillemotright>"   and "\<guillemotleft>g : b \<rightarrow>\<^sub>C c\<guillemotright>" shows "\<guillemotleft>g \<cdot> f : a \<rightarrow>\<^sub>C c\<guillemotright>"
strict_domD: fixes G :: "nat graph_rec"   and i :: "nat"   and j :: "nat"   and a :: "nat list" assumes "cfg_doms G"   and "cfg_doms.strict_dom G i j"   and "cfg_doms.dom_kildall G ([] # replicate (length (g_V G) - 1) (rev [0..<length (g_V G)])) ! j = a" shows "i \<in> set a"
prod_primes_upto_less: fixes n :: "nat" assumes "0 < n" shows "\<Prod>{p. prime p \<and> p \<le> n} < 4 ^ n"
abs_eq: fixes x :: "j \<Rightarrow> i \<Rightarrow> bool" shows "\<^bold>\<lambda>\<^sup>0 (make\<o> x) = make\<o> x"
lookup_eq_zero_in_keys_contradict: fixes f :: "'b \<Rightarrow>\<^sub>0 'a"   and k :: "'b" assumes "lookup f k = (0::'a)" shows "k \<notin> keys f"
mat_of_row_last_nth: fixes i :: "nat"   and n :: "nat"   and A :: "'b mat" assumes "i < n" shows "row (mat_row_last A n) i = row A (dim_row A - n + i)"
broadcast_is_valid: fixes m :: "'a \<times> 'b"   and i :: "nat" assumes "Broadcast m \<in> set (history i)" shows "\<exists>state. valid_msg state m"
dvd_refl: fixes times :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and one :: "'c"   and a :: "'c" assumes "class.comm_monoid_mult times one" shows "dvd.dvd times a a"
smooth_compat_D2: fixes k :: "enat"   and c1 :: "('c, 'd) chart"   and c2 :: "('c, 'd) chart" assumes "k-smooth_compat c1 c2" shows "k-smooth_on (apply_chart c2 ` (domain c1 \<inter> domain c2)) (apply_chart c1 \<circ> inv_chart c2)"