hcju/isabelleps huggingface dataset:
extend_restrict_indets_eq_dehomogenize: fixes p :: "('b option \<Rightarrow>\<^sub>0 nat) \<Rightarrow>\<^sub>0 'c" shows "extend_indets (restrict_indets p) = dehomogenize None p"
abs_LBINT_I0c_abs_power_diff: fixes x :: "real"   and n :: "nat" shows "\<bar>LBINT s=0..ereal x. \<bar>(x - s) ^ n\<bar>\<bar> = \<bar>x ^ Suc n / real (Suc n)\<bar>"
numeral_uint8: fixes n :: "num" shows "numeral n = Uint8 (numeral n)"
inited_gext: fixes C :: "qtname"   and s :: "st"   and s' :: "st" assumes "inited C (globs s)"   and "s\<le>|s'" shows "inited C (globs s')"
real_poly_factor: fixes p :: "'b poly"   and q :: "'b poly" assumes "set (coeffs (p * q)) \<subseteq> \<real>"   and "set (coeffs p) \<subseteq> \<real>"   and "p \<noteq> 0" shows "set (coeffs q) \<subseteq> \<real>"
intersectionEmptyRelationIntersectionEmpty: fixes R :: "('d \<times> 'c) set"   and X1 :: "'d set"   and X2 :: "'d set" assumes "runiq (R\<inverse>)"   and "runiq R"   and "X1 \<inter> X2 = {}" shows "R `` X1 \<inter> R `` X2 = {}"
zip_obtain_same_length: fixes xs :: "'c list"   and ys :: "'d list"   and P :: "('c \<times> 'd) list \<Rightarrow> bool" assumes "\<And>zs ws n. \<lbrakk>length zs = length ws; n = min (length xs) (length ys); zs = take n xs; ws = take n ys\<rbrakk> \<Longrightarrow> P (zip zs ws)" shows "P (zip xs ys)"
ide_in_hom_2: fixes f :: "'a arrow_of_spans_data" assumes "ide f" shows "\<guillemotleft>f : f \<Rightarrow> f\<guillemotright>"
intros: fixes c :: "real"   and x :: "'b nonzero" assumes "c \<noteq> 0" shows "proj_rel x (c *\<^sub>R x)"
simps_3: fixes hsx :: "'b tree"   and x :: "'b"   and hsy :: "'b tree"   and y :: "'b" shows "merge \<langle>hsx, x, \<langle>\<rangle>\<rangle> \<langle>hsy, y, \<langle>\<rangle>\<rangle> = link \<langle>hsx, x, \<langle>hsy, y, \<langle>\<rangle>\<rangle>\<rangle>"
GSMP_proj_is_homogeneous: fixes A :: "('a strand_label \<times> ('fun, 'var) strand_step) list"   and Sec :: "('fun, 'var) Term.term set"   and t :: "('fun, 'var) Term.term"   and l :: "'a" assumes "\<forall>l l'. l \<noteq> l' \<longrightarrow> GSMP_disjoint (trms\<^sub>l\<^sub>s\<^sub>t (proj l A)) (trms\<^sub>l\<^sub>s\<^sub>t (proj l' A)) Sec"   and "t \<in> GSMP (trms\<^sub>l\<^sub>s\<^sub>t (proj l A))"   and "t \<notin> Sec" shows "homogeneous\<^sub>l\<^sub>s\<^sub>t t A Sec"
nat_mono_characterization: fixes f :: "nat \<Rightarrow> nat" assumes "mono f" obtains n :: "nat" where "\<And>m. n \<le> m \<Longrightarrow> f n = f m"   | "\<And>m. \<exists>n. m \<le> f n"
simps_2: fixes env :: "('d, bool) mapping" shows "taut_test_rec Falseif env = False"
iT_Mult_cut_greater2: fixes k :: "nat"   and I :: "nat set"   and t :: "nat" assumes "0 < k" shows "(I \<otimes> k) \<down>> (t * k) = I \<down>> t \<otimes> k"
dichotomous_Lazard: fixes x :: "'a"   and n :: "nat"   and y :: "'a" assumes "to_fract x ^ n / to_fract y ^ (n - 1) \<in> range to_fract" shows "to_fract (dichotomous_Lazard x y n) = to_fract x ^ n / to_fract y ^ (n - 1)"
null_sets_count_space: fixes A :: "'b set" shows "null_sets (count_space A) = {{}}"
prv_lcnj_imp_remdups: fixes \<phi>s :: "'fmla list" assumes "set \<phi>s \<subseteq> fmla" shows "prv (imp (lcnj (remdups \<phi>s)) (lcnj \<phi>s))"
funpow_simp_l: fixes f :: "'b \<Rightarrow> 'b"   and n :: "nat"   and x :: "'b" shows "f ((f ^^ n) x) = (f ^^ Suc n) x"
l_get_child_nodes\<^sub>S\<^sub>h\<^sub>a\<^sub>d\<^sub>o\<^sub>w\<^sub>_\<^sub>D\<^sub>O\<^sub>M_def: fixes type_wf :: "(_) heap \<Rightarrow> bool"   and known_ptr :: "(_) object_ptr \<Rightarrow> bool"   and type_wf\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M :: "(_) heap \<Rightarrow> bool"   and known_ptr\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M :: "(_) object_ptr \<Rightarrow> bool"   and get_child_nodes :: "(_) object_ptr \<Rightarrow> ((_) heap, exception, (_) node_ptr list) prog"   and get_child_nodes_locs :: "(_) object_ptr \<Rightarrow> ((_) heap \<Rightarrow> (_) heap \<Rightarrow> bool) set"   and get_child_nodes\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M :: "(_) object_ptr \<Rightarrow> ((_) heap, exception, (_) node_ptr list) prog"   and get_child_nodes_locs\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M :: "(_) object_ptr \<Rightarrow> ((_) heap \<Rightarrow> (_) heap \<Rightarrow> bool) set" shows "l_get_child_nodes\<^sub>S\<^sub>h\<^sub>a\<^sub>d\<^sub>o\<^sub>w\<^sub>_\<^sub>D\<^sub>O\<^sub>M type_wf known_ptr type_wf\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M known_ptr\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M get_child_nodes get_child_nodes_locs get_child_nodes\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M get_child_nodes_locs\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M \<equiv> l_get_child_nodes\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M type_wf\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M known_ptr\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M get_child_nodes\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M get_child_nodes_locs\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M \<and> l_get_child_nodes\<^sub>S\<^sub>h\<^sub>a\<^sub>d\<^sub>o\<^sub>w\<^sub>_\<^sub>D\<^sub>O\<^sub>M_axioms type_wf known_ptr get_child_nodes get_child_nodes_locs"
no_retsl_from_initial: fixes w :: "('b, 'c) label list"   and p :: "'b"   and c :: "'a list multiset"   and r' :: "'a list"   and c' :: "'a list multiset" assumes "w \<noteq> []"   and "initialproc fg p"   and "(([entry fg p], c), w, r', c') \<in> trcl (trss fg)"   and "length r' \<le> 1" shows "False"
accs_exclusive1: fixes \<delta> :: "('a, 'b) ta_rule set"   and \<delta>' :: "('a, 'b) ta_rule set"   and n :: "'b tree"   and q :: "'a" assumes "accs (\<delta> \<union> \<delta>') n q"   and "\<delta>_states \<delta> \<inter> \<delta>_states \<delta>' = {}"   and "q \<in> \<delta>_states \<delta>" shows "accs \<delta> n q"
mono_plus_ivl: fixes iv1 :: "ivl"   and iv2 :: "ivl"   and iv3 :: "ivl"   and iv4 :: "ivl" assumes "iv1 \<le> iv2"   and "iv3 \<le> iv4" shows "iv1 + iv3 \<le> iv2 + iv4"
INF_apply: fixes f :: "'c \<Rightarrow> 'b \<Rightarrow> 'a"   and A :: "'c set"   and x :: "'b" shows "(\<Sqinter> (f ` A)) x = (\<Sqinter>y\<in>A. f y x)"
Eexpand: shows "E \<union> stateful \<union> {x} = E"
split_block_3: fixes A :: "'a mat"   and sr1 :: "nat"   and sc1 :: "nat"   and A1 :: "'a mat"   and A2 :: "'a mat"   and A3 :: "'a mat"   and A4 :: "'a mat"   and sr2 :: "nat"   and sc2 :: "nat" assumes "split_block A sr1 sc1 = (A1, A2, A3, A4)"   and "dim_row A = sr1 + sr2"   and "dim_col A = sc1 + sc2" shows "A3 \<in> carrier_mat sr2 sc1"
dg_is_arrD_4: fixes a :: "V"   and b :: "V"   and f :: "V" assumes "f : a \<mapsto>\<^bsub>\<AA>\<^esub> b" shows "\<AA>\<lparr>Dom\<rparr>\<lparr>f\<rparr> = a"
disj_conj_abs: fixes P :: "'b \<Rightarrow> bool"   and Q :: "'b \<Rightarrow> bool" shows "(P \<or> P \<and> Q) = P"
cs_def_2: shows "\<S>\<bullet>\<C> \<turnstile> cs2 : [] _> t1s"
offs_enum_ub: fixes index :: "('c \<Rightarrow> 'd) \<Rightarrow> 'c \<Rightarrow> nat \<Rightarrow> 'd \<Rightarrow> 'd \<Rightarrow> nat"   and key :: "'c \<Rightarrow> 'd"   and i :: "nat"   and n :: "nat"   and xs :: "'c list"   and mi :: "'d"   and ma :: "'d"   and k :: "nat" assumes "index_less index key"   and "i < n"   and "\<And>x. x \<in> set xs \<Longrightarrow> key x \<in> {mi..ma}" shows "offs (enum xs index key n mi ma) k ! i \<le> length xs + k"
simps_3: fixes cl :: "lambda \<times> (nat \<Rightarrow> contour option)" shows "|DC cl| = {PC |cl|}"
nn_integral_densityR: fixes f :: "'b \<Rightarrow> ennreal"   and F :: "'b measure"   and g :: "'b \<Rightarrow> ennreal" assumes "f \<in> borel_measurable F"   and "g \<in> borel_measurable F" shows "\<integral>\<^sup>+ x. f x * g x \<partial>F = integral\<^sup>N (density F g) f"
distr_id: fixes N :: "'d measure" shows "distr N N (\<lambda>x. x) = N"
suffix_conc_length: fixes w :: "'b list"   and w' :: "nat \<Rightarrow> 'b" shows "suffix (length w) (w \<frown> w') = w'"
inter_sctn_spec_def: fixes X :: "'a set"   and sctn :: "'a sctn" shows "inter_sctn_spec X sctn = SPEC (\<lambda>R. X \<inter> plane_of sctn \<subseteq> R \<and> R \<subseteq> plane_of sctn)"
dfs_eq_rtrancl: fixes ks :: "int list"   and l :: "int"   and y :: "int"   and x :: "int"   and n :: "nat" assumes "dioph_is_node ks l y"   and "dioph_is_node ks l x" shows "dioph_memb y (dioph_dfs.dfs n ks (dioph_empt ks l) [x]) = ((x, y) \<in> (succsr (dioph_succs n ks))\<^sup>*)"
max_diff_pos: shows "0 \<le> 9223372034707292161 + - (2 ^ 31)"
dist_les_1: shows "LT \<notsqsubseteq> EQ"
Step0: fixes g :: "'a" assumes "g \<in> carrier G" shows "(\<lambda>H\<in>{H. H \<subseteq> carrier G}. g <# H #> inv g) \<in> Bij {H. H \<subseteq> carrier G}"
minus_exp_eq_not_mask: fixes plus :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and minus :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and zero :: "'a"   and times :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and one :: "'a"   and divide :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and modulo :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and bit :: "'a \<Rightarrow> nat \<Rightarrow> bool"   and push_bit :: "nat \<Rightarrow> 'a \<Rightarrow> 'a"   and drop_bit :: "nat \<Rightarrow> 'a \<Rightarrow> 'a"   and take_bit :: "nat \<Rightarrow> 'a \<Rightarrow> 'a"   and "and" :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and or :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and xor :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and mask :: "nat \<Rightarrow> 'a"   and uminus :: "'a \<Rightarrow> 'a"   and not :: "'a \<Rightarrow> 'a"   and n :: "nat" assumes "class.ring_bit_operations plus minus zero times one divide modulo bit push_bit drop_bit take_bit and or xor mask uminus not" shows "uminus (power.power one times (numeral.numeral one plus (num.Bit0 num.One)) n) = not (mask n)"
moebius_preserve_circline_type: fixes M :: "moebius"   and H :: "circline" shows "circline_type (moebius_circline M H) = circline_type H"
knows_Spy_Says: fixes A :: "agent"   and B :: "agent"   and X :: "msg"   and evs :: "event list" shows "knows Spy (Says A B X # evs) = insert X (knows Spy evs)"
A3b: fixes x :: "i" shows "x \<^bold>\<cdot> x\<box> \<cong> x"
2: shows "avl \<langle>l, (a, b_), r\<rangle>"
pnet_reachable_transfer: fixes n :: "net_tree"   and s :: "'s net_state"   and U :: "(nat \<Rightarrow> 'g) \<Rightarrow> (nat \<Rightarrow> 'g) \<Rightarrow> bool" assumes "wf_net_tree n"   and "s \<in> reachable (closed (pnet np n)) TT" shows "initmissing (netgmap sr s) \<in> oreachable (oclosed (opnet onp n)) (\<lambda>_ _ _. True) U"
countable_UN: fixes I :: "'c set"   and A :: "'c \<Rightarrow> 'd set" assumes "countable I"   and "\<And>i. i \<in> I \<Longrightarrow> countable (A i)" shows "countable (\<Union> (A ` I))"
ordermap_eq_iff: fixes x :: "'a"   and A :: "'a set"   and y :: "'a"   and r :: "('a \<times> 'a) set" assumes "x \<in> A"   and "y \<in> A"   and "wf r"   and "total_on A r"   and "small A" shows "(ordermap A r x = ordermap A r y) = (x = y)"
bind_advantage_bound_dis_log: fixes \<eta> :: "nat"   and \<A> :: "'grp \<Rightarrow> ('grp \<times> nat \<times> nat \<times> nat \<times> nat) spmf" shows "Schnorr_\<Sigma>_commit.abstract_com.bind_advantage \<eta> \<A> \<le> discrete_log.advantage \<eta> (Schnorr_\<Sigma>_commit.adversary \<eta> \<A>)"
intro: fixes inner_cols :: "('a, 'b) vec \<Rightarrow> ('a, 'b) vec \<Rightarrow> 'a"   and inner_rows :: "('a, 'c) vec \<Rightarrow> ('a, 'c) vec \<Rightarrow> 'a" assumes "vec_real_inner (\<lambda>x y. x * cnj_class.cnj y) inner_cols"   and "vec_real_inner (\<lambda>x y. x * cnj_class.cnj y) inner_rows" shows "Generalizations2.matrix inner_cols inner_rows"
vifunion_vintersection_single: fixes B :: "V"   and I :: "V"   and f :: "V \<Rightarrow> V" shows "B \<inter>\<^sub>\<circ> \<Union>\<^sub>\<circ> (VLambda I f `\<^sub>\<circ> I) = \<Union>\<^sub>\<circ> ((\<lambda>a\<in>\<^sub>\<circ>I. B \<inter>\<^sub>\<circ> f a) `\<^sub>\<circ> I)"
hyps_2: fixes u :: "trm"   and T' :: "ty" assumes "\<Gamma> \<turnstile> p \<leftrightarrow> u : T'" shows "T\<^sub>1\<rightarrow>T\<^sub>2 = T'"
lvl_insert_sngl: fixes t :: "('b \<times> nat) tree"   and x :: "'b" assumes "invar t"   and "sngl t" shows "lvl (insert x t) = lvl t"
less_imp_neq: fixes x :: "'a"   and y :: "'a" assumes "lt x y" shows "x \<noteq> y"
2: shows "z_R (subsets_smash_R n1 subs1 subs2 ! i) (signs_smash signs1 signs2 ! j) = z_R (fst (subs1 ! (i div length subs2)) @ map ((+) n1) (fst (subs2 ! (i mod length subs2))), snd (subs1 ! (i div length subs2)) @ map ((+) n1) (snd (subs2 ! (i mod length subs2)))) (signs1 ! (j div length signs2) @ signs2 ! (j mod length signs2))"
is_singleton_the_elem: fixes A :: "'c set" shows "is_singleton A = (A = {the_elem A})"
hs: shows "Supgroup.is_rcoset_replist G hs"
divide_le_0_abs_iff: fixes divide :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and inverse :: "'c \<Rightarrow> 'c"   and times :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and one :: "'c"   and plus :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and zero :: "'c"   and minus :: "'c \<Rightarrow> 'c \<Rightarrow> 'c"   and uminus :: "'c \<Rightarrow> 'c"   and less_eq :: "'c \<Rightarrow> 'c \<Rightarrow> bool"   and less :: "'c \<Rightarrow> 'c \<Rightarrow> bool"   and sgn :: "'c \<Rightarrow> 'c"   and abs :: "'c \<Rightarrow> 'c"   and a :: "'c"   and b :: "'c" assumes "class.linordered_field divide inverse times one plus zero minus uminus less_eq less sgn abs" shows "less_eq (divide a (abs b)) zero = (less_eq a zero \<or> b = zero)"
add: fixes fa :: "'a \<Rightarrow>\<^sub>C\<^sub>L 'b"   and b1 :: "'a"   and b2 :: "'a" shows "cblinfun_apply fa (b1 + b2) = cblinfun_apply fa b1 + cblinfun_apply fa b2"
obs_prefix_def: fixes a :: "nat \<Rightarrow> 'a option"   and b :: "nat \<Rightarrow> 'a option" shows "IFC_def.obs_prefix a b \<equiv> \<forall>i. a i \<noteq> None \<longrightarrow> a i = b i"
cod_simps_3: shows "\<mu>\<nu>_\<pi>.cod.leg1 = \<mu>\<nu>_\<pi>.leg1"
assms_3: shows "(x, z) \<in> r\<^sup>\<down>"
bij_betw_mono_on_the_inv_into: fixes f :: "'b \<Rightarrow> 'c"   and A :: "'b set"   and B :: "'c set" assumes "bij_betw f A B"   and "mono_on f A" shows "mono_on (the_inv_into A f) B"
init_butlast_init: fixes f :: "nat \<Rightarrow> nat option"   and n :: "nat"   and e :: "nat" assumes "total1 f"   and "f \<triangleright> n = e"   and "0 < n" shows "f \<triangleright> (n - 1) = e_butlast e"
closure_translation: fixes a :: "'a"   and s :: "'a set" shows "closure ((+) a ` s) = (+) a ` closure s"
coeff_Q: fixes k :: "nat" shows "poly.coeff Q k = (if n < k then 0 else (- 1) ^ (n - k) * e (n - k))"
generate_valid_topology_def_alt: fixes M :: "'a SecurityInvariant_configured list"   and G :: "'a graph" shows "TopoS_Composition_Theory.generate_valid_topology M G = FiniteGraph.delete_edges G (\<Union> (get_offending_flows M G))"
diff_delta_ln_upper_3_def: shows "diff_delta_ln_upper_3 \<equiv> \<lambda>x. (x - 1) ^ 3 / ((2 * x + 1)\<^sup>2 * x)"
find_cong: fixes xs :: "'a list"   and ys :: "'a list"   and P :: "'a \<Rightarrow> bool"   and Q :: "'a \<Rightarrow> bool" assumes "xs = ys"   and "\<And>x. x \<in> set ys \<Longrightarrow> P x = Q x" shows "List.find P xs = List.find Q ys"
compute_flow_val_aux_correct: fixes am :: "nat \<Rightarrow> nat list" assumes "is_adj_map am" shows "compute_flow_val_aux am cf \<le> (spec v. v = f.val)"
revis_success: fixes K :: "'a set"   and A :: "'a set"   and \<phi> :: "'a" assumes "K = Cn A" shows "\<phi> \<in> K \<^bold>* \<phi>"
nonstop_t_eq: fixes l :: "nat"   and lm :: "'b"   and tp :: "(action \<times> nat) list"   and stp :: "nat"   and m :: "nat"   and rs :: "nat"   and n :: "nat" assumes "steps0 (Suc 0, Bk \<up> l, <lm>) tp stp = (0, Bk \<up> m, Oc \<up> rs @ Bk \<up> n)"   and "tm_wf0 tp"   and "0 < rs" shows "rec_exec rec_nonstop [code tp, bl2wc (<lm>), stp] = 0"
g: fixes x :: "'e" assumes "x \<in> S" shows "g differentiable at x"
Le_le_LeD: fixes a :: "'b"   and b :: "'b" assumes "Le a \<le> Le b" shows "a \<le> b"
quasi_isometry_on_def: fixes lambda :: "real"   and C :: "real"   and X :: "'b set"   and f :: "'b \<Rightarrow> 'c" shows "lambda C -quasi_isometry_on X f = (1 \<le> lambda \<and> 0 \<le> C \<and> (\<forall>x\<in>X. \<forall>y\<in>X. dist (f x) (f y) \<le> lambda * dist x y + C \<and> 1 / lambda * dist x y - C \<le> dist (f x) (f y)))"
qC'_p: shows "map \<eta> qC' = lC \<and> mset qC' = C'"
B_def: shows "B = Sup (sum f ` {F. F \<subseteq> S \<and> finite F})"
pfa_set_def: shows "pfa_set \<equiv> arl_set"
assms_2: shows "s \<le> nsqn (rt \<xi>) i"
tendsto_norm_zero: fixes f :: "'c \<Rightarrow> 'd"   and F :: "'c filter" assumes "(f \<longlongrightarrow> (0::'d)) F" shows "((\<lambda>x. norm (f x)) \<longlongrightarrow> 0) F"
S'_A_eq_S'_alpha_A: fixes A :: "type_scheme list"   and t :: "'a"   and S :: "nat \<Rightarrow> typ"   and n :: "nat" shows "$ (\<lambda>n. if n \<in> free_tv A \<union> free_tv t then S n else TVar n) A = $ ((\<lambda>x. if x \<in> free_tv A \<union> free_tv t then S x else TVar x) \<circ> (\<lambda>x. if x \<in> free_tv A then x else n + x)) A"
supset_imp_s_mul_ext: fixes NS :: "('a \<times> 'a) set"   and B :: "'a multiset"   and A :: "'a multiset"   and S :: "('a \<times> 'a) set" assumes "refl NS"   and "B \<subset># A" shows "(A, B) \<in> s_mul_ext NS S"
elementary_Int: fixes p1 :: "'a set set"   and s :: "'a set"   and p2 :: "'a set set"   and t :: "'a set" assumes "p1 division_of s"   and "p2 division_of t" shows "\<exists>p. p division_of s \<inter> t"
mono_gamma: fixes a :: "'a"   and b :: "'a" assumes "a \<sqsubseteq> b" shows "\<gamma> a \<subseteq> \<gamma> b"
diff_cancel: fixes a :: "'k" shows "a - a = (0::'k)"
simps_21: fixes vc :: "('a, 'b, 'c, 'd) Tree"   and v :: "'d"   and va :: "'c"   and vb :: "('a, 'b, 'c, 'd) Tree" shows "(tNot vc =\<^sub>\<alpha> tAct v va vb) = False"
pointermap_insert_in: fixes u :: "'a pointermap"   and a :: "'a"   and m :: "('a, 'b) pointermap_scheme" assumes "u = pointermap_insert a m" shows "pm_pth u (the (getentry u a)) = a"
sorted_nth_mono': fixes xs :: "'a list"   and j :: "nat"   and i :: "nat" assumes "sorted xs"   and "j < length xs"   and "i \<le> j" shows "xs ! i \<le> xs ! j"
complement_p: fixes x :: "'a"   and y :: "'a" assumes "x \<sqinter> y = bot"   and "x \<squnion> y = top" shows "- x = y"
assms_1: shows "simulation as\<^sub>0 alstep bs\<^sub>0 blstep R\<^sub>1"
walk_last_edge: fixes G :: "('a, 'b) Graph_scheme"   and xs :: "'a list"   and ys :: "'a list" assumes "Digraph G"   and "Digraph.walk G (xs @ ys)"   and "xs \<noteq> []"   and "ys \<noteq> []" shows "last xs \<rightarrow>\<^bsub>G\<^esub> hd ys"
pre_skip_post: fixes b :: "'a upred" shows "(\<lceil>b\<rceil>\<^sub>< \<and> II) = (II \<and> \<lceil>b\<rceil>\<^sub>>)"
spmf_try_spmf: fixes p :: "'a spmf"   and q :: "'a spmf"   and x :: "'a" shows "spmf (TRY p ELSE q) x = spmf p x + pmf p None * spmf q x"
next_recv_marker: fixes c :: "('p, 's, 'm) configuration"   and i :: "nat"   and p :: "'p"   and q :: "'p"   and c' :: "('p, 's, 'm) configuration" shows "c \<turnstile> RecvMarker i p q \<mapsto> c' = (can_occur (RecvMarker i p q) c \<and> (\<forall>r. states c r = states c' r) \<and> (\<forall>r. r \<noteq> p \<longrightarrow> ps c r = ps c' r) \<and> Marker # msgs c' i = msgs c i \<and> cs c' i = (fst (cs c i), Done) \<and> (if ps c p \<noteq> None then ps c p = ps c' p \<and> (\<forall>i'. i' \<noteq> i \<longrightarrow> msgs c' i' = msgs c i') \<and> (\<forall>i'. i' \<noteq> i \<longrightarrow> cs c i' = cs c' i') else ps c' p = Some (states c p) \<and> (\<forall>i'. i' \<noteq> i \<and> (\<exists>r. channel i' = Some (p, r)) \<longrightarrow> msgs c' i' = msgs c i' @ [Marker]) \<and> (\<forall>i'. i' \<noteq> i \<and> (\<exists>r. channel i' = Some (r, p)) \<longrightarrow> cs c' i' = (fst (cs c i'), Recording)) \<and> (\<forall>i'. i' \<noteq> i \<and> (\<nexists>r. channel i' = Some (p, r)) \<longrightarrow> msgs c' i' = msgs c i') \<and> (\<forall>i'. i' \<noteq> i \<and> (\<nexists>r. channel i' = Some (r, p)) \<longrightarrow> cs c' i' = cs c i')))"
vid_on_eqI: fixes a :: "V"   and b :: "V"   and A :: "V" assumes "a = b"   and "a \<in>\<^sub>\<circ> A" shows "\<langle>a, b\<rangle> \<in>\<^sub>\<circ> vid_on A"
sin_45: shows "sin (pi / 4) = sqrt 2 / 2"
return_None_bind_spmf: fixes f :: "'b \<Rightarrow> 'a spmf" shows "bind_spmf (return_pmf None) f = return_pmf None"
IH_1: assumes "OadmitFO \<sigma> ODE1 U"   and "\<And>i. dsafe (\<sigma> i)" shows "ODE_sem I (OsubstFO ODE1 \<sigma>) (fst \<nu>) = ODE_sem (adjointFO I \<sigma> \<nu>) ODE1 (fst \<nu>)"
\<A>_4: fixes S :: "'a set" assumes "open S"   and "fst x \<in> S" shows "\<exists>a\<in>\<A>. a \<subseteq> S"
le_prod_def: fixes p1 :: "'a \<times> 'b"   and p2 :: "'a \<times> 'b" shows "(p1 \<sqsubseteq> p2) = (fst p1 \<sqsubseteq> fst p2 \<and> snd p1 \<sqsubseteq> snd p2)"
Amk_notzero: shows "A $ m $ mod_type_class.from_nat k \<noteq> (0::'a)"
equiv1: shows "w1 \<equiv>\<^sub>E r'\<^sub>1"
lspasl_eq_der: fixes h1 :: "'a"   and h2 :: "'a" assumes "0::'a,h1\<triangleright>h2" shows "(0::'a,h1\<triangleright>h1) \<and> h1 = h2"
lbounds_def: fixes as :: "atom list" shows "lbounds as = concat (map (\<lambda>x. case x of Less r [] \<Rightarrow> [] | Less r (c # cs) \<Rightarrow> if 0 < c then [(r / c, (- 1 / c) *\<^sub>s cs)] else [] | Eq real list \<Rightarrow> []) as)"
pell_mul_trivial_right: fixes D :: "nat"   and z :: "'a \<times> 'a" assumes "pell D" shows "pell.pell_mul D z (1::'a, 0::'a) = z"
empty_subsetI: fixes A :: "'h set" shows "{} \<subseteq> A"
Fvars_R: shows "Fvars R = {xx, yy}"
rowvector_def: fixes v :: "('d, 'e) vec" shows "rowvector v = (\<chi>i j. v $ j)"
integral_mono_lebesgue_on_AE: fixes T :: "'a set"   and f :: "'a \<Rightarrow> real"   and g :: "'a \<Rightarrow> real"   and S :: "'a set" assumes "integrable (lebesgue_on T) f"   and "AE x in lebesgue_on S. g x \<le> f x"   and "AE x in lebesgue_on T. 0 \<le> f x"   and "S \<subseteq> T"   and "S \<in> sets lebesgue"   and "T \<in> sets lebesgue" shows "integral\<^sup>L (lebesgue_on S) g \<le> integral\<^sup>L (lebesgue_on T) f"
local_time_cocycle: fixes A :: "'a set"   and n :: "nat"   and x :: "'a"   and m :: "nat" shows "local_time A n x + local_time A m ((T ^^ n) x) = local_time A (n + m) x"
inv_eq_1_iff: fixes x :: "'b" assumes "x \<in> UNIV" shows "(- x = (0::'b)) = (x = (0::'b))"
lexord_irreflexive: fixes r :: "('a \<times> 'a) set"   and xs :: "'a list" assumes "\<forall>x. (x, x) \<notin> r" shows "(xs, xs) \<notin> lexord r"
irbd_set: fixes \<phi> :: "'c set \<Rightarrow> 'd set" shows "bd\<^sup>-\<^sub>\<R> \<phi> = {(x, y). s2p (bd\<^sup>-\<^sub>\<F> \<phi> x) y}"
IH: fixes \<phi> :: "'fmla" assumes "\<phi> \<in> fmla"   and "snd ` set txs \<subseteq> var"   and "fst ` set txs \<subseteq> trm"   and "distinct (map snd txs)"   and "\<forall>x\<in>snd ` set txs. \<forall>t\<in>fst ` set txs. x \<notin> FvarsT t" shows "Fvars (rawpsubst \<phi> txs) = Fvars \<phi> - snd ` set txs \<union> \<Union> {if x \<in> Fvars \<phi> then FvarsT t else {} |t x. (t, x) \<in> set txs}"
less_eq_funE: fixes f :: "nat \<Rightarrow> nat"   and g :: "nat \<Rightarrow> nat" assumes "f \<lesssim> g" obtains n :: "nat" and c :: "nat" where "0 < c" and "\<And>m. n < m \<Longrightarrow> f m \<le> c * g m"
sst_vars_append_subset_3: fixes B :: "('d, 'c) stateful_strand_step list"   and A :: "('d, 'c) stateful_strand_step list" shows "fv\<^sub>s\<^sub>s\<^sub>t B \<subseteq> fv\<^sub>s\<^sub>s\<^sub>t (A @ B)"
arev_arev: fixes G :: "('e, 'f) pre_digraph"   and arev :: "'f \<Rightarrow> 'f"   and a :: "'f" assumes "bidirected_digraph G arev" shows "arev (arev a) = a"
adjacentset_chamber: fixes C :: "'a set"   and D :: "'a set" assumes "chamber C"   and "D \<in> adjacentset C" shows "chamber D"
power_strict_increasing_iff: fixes plus :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and minus :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and less_eq :: "'b \<Rightarrow> 'b \<Rightarrow> bool"   and less :: "'b \<Rightarrow> 'b \<Rightarrow> bool"   and zero :: "'b"   and times :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and one :: "'b"   and b :: "'b"   and x :: "nat"   and y :: "nat" assumes "class.linordered_semidom plus minus less_eq less zero times one"   and "less one b" shows "less (power.power one times b x) (power.power one times b y) = (x < y)"