hcju/isabelleps huggingface dataset:
case_prodI2: fixes p :: "'d \<times> 'e"   and c :: "'d \<Rightarrow> 'e \<Rightarrow> bool" assumes "\<And>a b. p = (a, b) \<Longrightarrow> c a b" shows "case p of (a, b) \<Rightarrow> c a b"
ereal_less_2: fixes r :: "real" shows "(0 < ereal r) = (0 < r)"
lm052: fixes a :: "('a \<times> 'b set) set" shows "{(fst pair, {y}) |y pair. y \<in> snd pair \<and> pair \<in> a} = {(x, {y}) |x y. y \<in> a ,,, x \<and> x \<in> Domain a}"
seq: fixes c\<^sub>1 :: "(var\<^sub>C, aexp\<^sub>C, bexp\<^sub>C) Stmt"   and mds :: "Mode \<Rightarrow> var\<^sub>C set"   and mem :: "var\<^sub>C \<Rightarrow> nat"   and c\<^sub>1' :: "(var\<^sub>C, aexp\<^sub>C, bexp\<^sub>C) Stmt"   and mds' :: "Mode \<Rightarrow> var\<^sub>C set"   and mem' :: "var\<^sub>C \<Rightarrow> nat"   and c\<^sub>2 :: "(var\<^sub>C, aexp\<^sub>C, bexp\<^sub>C) Stmt" assumes "eval_abv\<^sub>C \<langle>c\<^sub>1, mds, mem\<rangle>\<^sub>C \<langle>c\<^sub>1', mds', mem'\<rangle>\<^sub>C" shows "eval_abv\<^sub>C \<langle>c\<^sub>1 ;; c\<^sub>2, mds, mem\<rangle>\<^sub>C \<langle>c\<^sub>1' ;; c\<^sub>2, mds', mem'\<rangle>\<^sub>C"
3: shows "[k] \<langle>f\<rangle> [l] = [k] \<langle>g\<rangle> [l] \<and> [k] \<langle>f\<rangle> ls = [k] \<langle>g\<rangle> ls \<and> ks \<langle>f\<rangle> [l] = ks \<langle>g\<rangle> [l] \<and> ks \<langle>f\<rangle> ls = ks \<langle>g\<rangle> ls"
assms: shows "d \<in> set (map snd (half_segments_of_aform X))"
3: fixes i :: "nat" assumes "i \<in> s - {least s}" shows "Suc (least s) \<le> i"
execute_ground_action_def: fixes a :: "ground_action"   and M :: "object atom formula set" shows "execute_ground_action a M = apply_effect (ground_action.effect a) M"
right_mult_zero_mat: fixes A :: "'a mat"   and nr :: "nat"   and n :: "nat"   and nc :: "nat" assumes "A \<in> carrier_mat nr n" shows "A * 0\<^sub>m n nc = 0\<^sub>m nr nc"
reflects_adjoint_pair: fixes f :: "'a"   and g :: "'a" assumes "C.ide f"   and "C.ide g"   and "src\<^sub>C f = trg\<^sub>C g"   and "src\<^sub>C g = trg\<^sub>C f"   and "D.adjoint_pair (F f) (F g)" shows "C.adjoint_pair f g"
isodefl_strict: fixes d :: "'a \<rightarrow> 'a"   and t :: "udom defl" assumes "isodefl d t" shows "d\<cdot>\<bottom> = \<bottom>"
hoare_complete: fixes \<Gamma> :: "'d \<Rightarrow> ('e, 'd, 'f) com option"   and F :: "'f set"   and P :: "'e set"   and c :: "('e, 'd, 'f) com"   and Q :: "'e set"   and A :: "'e set" assumes "\<Gamma>\<Turnstile>\<^bsub>/F\<^esub> P c Q,A" shows "\<Gamma>,{}\<turnstile>\<^bsub>/F \<^esub>P c Q,A"
bal_list_def: fixes n :: "nat"   and xs :: "'b list" shows "bal_list n xs = fst (bal n xs)"
conj_disj_distrib: fixes x :: "'b"   and y :: "'b"   and z :: "'b" shows "x AND (y OR z) = x AND y OR x AND z"
zero_Quantity_ext_def: shows "0 = \<lparr>mag = 0::'a, dim = 1, \<dots> = 0::'c\<rparr>"
simps_3: fixes a :: "floatarith" shows "max_Var_floatarith (Inverse a) = max_Var_floatarith a"
dvd_neg_div: fixes times :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and one :: "'a"   and plus :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and zero :: "'a"   and minus :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and uminus :: "'a \<Rightarrow> 'a"   and divide :: "'a \<Rightarrow> 'a \<Rightarrow> 'a"   and b :: "'a"   and a :: "'a" assumes "class.idom_divide times one plus zero minus uminus divide"   and "dvd.dvd times b a" shows "divide (uminus a) b = uminus (divide a b)"
preserves_iso: fixes f :: "'c" assumes "C.iso f" shows "C.iso (\<epsilon> f)"
rPar1: fixes \<Psi> :: "'b"   and \<Psi>\<^sub>Q :: "'b"   and P :: "('a, 'b, 'c) psi"   and M :: "'a"   and xvec :: "name list"   and N :: "'a"   and P' :: "('a, 'b, 'c) psi"   and Q :: "('a, 'b, 'c) psi"   and A\<^sub>Q :: "name list"   and C :: "'d" assumes "\<Psi> \<otimes> \<Psi>\<^sub>Q \<rhd> P \<longmapsto> M\<lparr>\<nu>*xvec\<rparr>\<langle>N\<rangle> \<prec> P'"   and "extractFrame Q = \<langle>A\<^sub>Q, \<Psi>\<^sub>Q\<rangle>"   and "distinct A\<^sub>Q"   and "\<And>C. Prop C (\<Psi> \<otimes> \<Psi>\<^sub>Q) P M xvec N P'"   and "A\<^sub>Q \<sharp>* P"   and "A\<^sub>Q \<sharp>* Q"   and "A\<^sub>Q \<sharp>* \<Psi>"   and "A\<^sub>Q \<sharp>* M"   and "A\<^sub>Q \<sharp>* xvec"   and "A\<^sub>Q \<sharp>* N"   and "A\<^sub>Q \<sharp>* P'"   and "A\<^sub>Q \<sharp>* C"   and "xvec \<sharp>* Q"   and "xvec \<sharp>* \<Psi>"   and "xvec \<sharp>* \<Psi>\<^sub>Q"   and "xvec \<sharp>* P"   and "xvec \<sharp>* M"   and "xvec \<sharp>* C" shows "Prop C \<Psi> (P \<parallel> Q) M xvec N (P' \<parallel> Q)"
IH: shows "(evaluate ck env s1 e (s2, Rval v1) \<and> (\<forall>x count count' s' r'. clock s1 = count + x \<and> (s2, Rval v1) = (s', r') \<and> clock s' = count' + x \<and> ck = True \<longrightarrow> evaluate True env (update_clock (\<lambda>_. count) s1) e (update_clock (\<lambda>_. count') s', r'))) \<and> evaluate_list ck env s2 es (s3, Rerr err) \<and> (\<forall>x count count' s' r'. clock s2 = count + x \<and> (s3, Rerr err) = (s', r') \<and> clock s' = count' + x \<and> ck = True \<longrightarrow> evaluate_list True env (update_clock (\<lambda>_. count) s2) es (update_clock (\<lambda>_. count') s', r'))"
smod_int_mod_0: fixes x :: "int" shows "x smod 0 = x"
is_sup_def: fixes x :: "nat"   and y :: "nat"   and s :: "nat" shows "nat.is_sup x y s = (x \<le> s \<and> y \<le> s \<and> (\<forall>z. x \<le> z \<and> y \<le> z \<longrightarrow> s \<le> z))"
set_less_aux_code: fixes xs :: "'a list"   and ys :: "'a list" assumes "sorted xs"   and "distinct xs"   and "sorted ys"   and "distinct ys" shows "(set xs \<sqsubset>' set ys) = ord.lexordp (\<lambda>x y. y < x) xs ys"
Suc_3: shows "\<forall>x a. enc_atom I x a = enc_atom I' x a"
alwaysE: fixes P :: "(nat \<Rightarrow> 'b) \<Rightarrow> bool"   and \<sigma> :: "nat \<Rightarrow> 'b"   and i :: "nat" assumes "(\<box>P) \<sigma>" obtains "P (\<sigma> |\<^sub>s i)"
msgs_unchanged_if_snapshotted_RecvMarker_for_other_is: fixes channel :: "nat \<Rightarrow> ('d \<times> 'd) option"   and trans :: "'d \<Rightarrow> 'e \<Rightarrow> 'e \<Rightarrow> bool"   and send :: "nat \<Rightarrow> 'd \<Rightarrow> 'd \<Rightarrow> 'e \<Rightarrow> 'e \<Rightarrow> 'f \<Rightarrow> bool"   and recv :: "nat \<Rightarrow> 'd \<Rightarrow> 'd \<Rightarrow> 'e \<Rightarrow> 'e \<Rightarrow> 'f \<Rightarrow> bool"   and c :: "('d, 'e, 'f) configuration"   and ev :: "('d, 'e, 'f) event"   and c' :: "('d, 'e, 'f) configuration"   and i :: "nat"   and p :: "'d"   and q :: "'d"   and i' :: "nat" assumes "distributed_system channel"   and "distributed_system.next channel trans send recv c ev c'"   and "ev = RecvMarker i p q"   and "ps c p \<noteq> None"   and "i' \<noteq> i" shows "msgs c i' = msgs c' i'"
add_diff_cancel_right: fixes a :: "'a"   and c :: "'a"   and b :: "'a" shows "a + c - (b + c) = a - b"
blocking_on_CD_on: fixes ds :: "'d set"   and X :: "'x set"   and h :: "'h"   and X'' :: "'x set" assumes "blocking_on ds X h X''" shows "X'' \<subseteq> CD_on ds (X \<union> X'')"
treewidth_cards_upper_bound_V: fixes n :: "nat" assumes "n \<in> treewidth_cards" shows "n \<le> card V - 1"
subdegree_add_ge': fixes f :: "'a fps"   and g :: "'a fps" assumes "f + g \<noteq> 0" shows "min (subdegree f) (subdegree g) \<le> subdegree (f + g)"
integrable_const_bound: fixes f :: "'b \<Rightarrow> 'c"   and B :: "real"   and M :: "'b pmf" assumes "AE x in measure_pmf M. norm (f x) \<le> B"   and "measure_pmf.random_variable M borel f" shows "integrable (measure_pmf M) f"
subgroup_in_rcosets: fixes H :: "'d set"   and G :: "('d, 'e) monoid_scheme" assumes "subgroup H G"   and "Group.group G" shows "H \<in> rcosets\<^bsub>G\<^esub> H"
hyps_3: shows "\<lless>\<pi>\<^sub>2, eP\<^sub>2\<ggreater> P\<rightarrow> \<lless>\<pi>\<^sub>1 @ \<pi>, eP\<^sub>3\<ggreater>"
real_of_float_of_int_eq: fixes z :: "int" shows "real_of_float (of_int z) = real_of_int z"
fds_nth_plus: fixes f :: "'a fds"   and g :: "'a fds" shows "fds_nth (f + g) = (\<lambda>n. fds_nth f n + fds_nth g n)"
nth_insert_nth_index_eq: fixes i :: "nat"   and xs :: "'b list"   and x :: "'b" assumes "i \<le> length xs" shows "insert_nth i x xs ! i = x"
get_child_nodes_locs_impl: shows "get_child_nodes_locs\<^sub>C\<^sub>o\<^sub>r\<^sub>e\<^sub>_\<^sub>D\<^sub>O\<^sub>M = CD.a_get_child_nodes_locs"
double_add_less_zero_iff_single_add_less_zero: fixes 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 a :: "'b" assumes "class.linordered_ab_group_add plus zero minus uminus less_eq less" shows "less (plus a a) zero = less a zero"
mod_base_i: fixes n :: "nat"   and d :: "nat \<Rightarrow> nat"   and i :: "nat" assumes "\<And>i. i < n \<Longrightarrow> d i < base"   and "0 < n"   and "i < n" shows "(\<Sum>j = i..<n. d j * base ^ (j - i)) mod base = d i"
h': shows "nextnat (s |\<^sub>s n) = (LEAST i. (s |\<^sub>s n) i \<noteq> (s |\<^sub>s n) 0)"
simps_3: fixes G :: "('b, 'a) labeled_graph"   and a :: "'b allegorical_term" shows ":G:\<lbrakk>A_Cnv a\<rbrakk> = (:G:\<lbrakk>a\<rbrakk>)\<inverse>"
fic_CANDS: fixes M :: "trm"   and a :: "coname"   and B :: "ty" assumes "\<not> fic M a"   and "<a>:M \<in> \<parallel><B>\<parallel>" shows "<a>:M \<in> AXIOMSc B \<or> <a>:M \<in> BINDINGc B (\<parallel>(B)\<parallel>)"
divide_le_0_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 b) zero = (less_eq zero a \<and> less_eq b zero \<or> less_eq a zero \<and> less_eq zero b)"
mon_sD: fixes m :: "'f"   and fg :: "('g, 'h, 'i, 'f, 'j) flowgraph_rec_scheme"   and s :: "'g list" assumes "m \<in> mon_s fg s" shows "\<exists>n\<in>set s. m \<in> mon_n fg n"
unique_representation: fixes basis :: "'b set"   and f :: "'b \<Rightarrow> 'a"   and g :: "'b \<Rightarrow> 'a" assumes "independent basis"   and "\<And>v. f v \<noteq> (0::'a) \<Longrightarrow> v \<in> basis"   and "\<And>v. g v \<noteq> (0::'a) \<Longrightarrow> v \<in> basis"   and "finite {v. f v \<noteq> (0::'a)}"   and "finite {v. g v \<noteq> (0::'a)}"   and "(\<Sum>v | f v \<noteq> (0::'a). f v *s v) = (\<Sum>v | g v \<noteq> (0::'a). g v *s v)" shows "f = g"
abs_eq: shows "r2fnd = Abs_nd_fun \<circ> \<F>"
jozsa_transform_dim_2: shows "dim_col U\<^sub>f = 2 ^ (n + 1)"
updVal_def: fixes val :: "'varSort \<Rightarrow> 'var \<Rightarrow> 'b"   and x :: "'var"   and sX :: "'b"   and xs :: "'varSort" shows "val (x := sX)_xs \<equiv> \<lambda>ys y. if ys = xs \<and> y = x then sX else val ys y"
add_assoc': fixes x :: "'a"   and y :: "'a"   and z :: "'a" shows "x \<squnion> y \<squnion> z = x \<squnion> (y \<squnion> z)"
wf_trm_param_idx: fixes f :: "'fun"   and T :: "('fun, 'a) Term.term list"   and i :: "nat" assumes "wf\<^sub>t\<^sub>r\<^sub>m (Fun f T)"   and "i < length T" shows "wf\<^sub>t\<^sub>r\<^sub>m (T ! i)"
Status_def: fixes HA :: "('d, 'e, 'f) hierauto"   and C :: "'d set"   and E :: "'e set"   and D :: "'f data" shows "Status HA C E D \<equiv> E \<subseteq> HAEvents HA \<and> IsConfSet (SAs HA) (CompFun HA) C \<and> Data.DataSpace (HAInitValue HA) = Data.DataSpace D"
apartment_chamber_distance: fixes A :: "'a set set"   and C :: "'a set"   and D :: "'a set" assumes "A \<in> \<A>"   and "chamber C"   and "chamber D"   and "C \<in> A"   and "D \<in> A" shows "ChamberComplex.chamber_distance A C D = chamber_distance C D"
fv\<^sub>s\<^sub>s\<^sub>t\<^sub>p_is_subterm_trms\<^sub>s\<^sub>s\<^sub>t\<^sub>p: fixes x :: "'c"   and a :: "('d, 'c) stateful_strand_step" assumes "x \<in> fv\<^sub>s\<^sub>s\<^sub>t\<^sub>p a" shows "Var x \<sqsubseteq>\<^sub>s\<^sub>e\<^sub>t trms\<^sub>s\<^sub>s\<^sub>t\<^sub>p a"
Cons_2: shows "(a # u) @ v =\<^sub>F v @ a # u"
assms: fixes usvs :: "[:'a:] \<times> 'b" assumes "\<And>usvs'. lt\<cdot>(slength\<cdot>(cfst\<cdot>usvs'))\<cdot>(slength\<cdot>(cfst\<cdot>usvs)) = TT \<Longrightarrow> P usvs'" shows "P usvs"
llast_def: fixes xs :: "'a llist" shows "llast xs = (case llength xs of enat (Suc n') \<Rightarrow> lnth xs n')"
sel_3: fixes x21 :: "'e"   and x22 :: "'e list" shows "tl (x21 # x22) = x22"
trace_callee_eq'_obsf_resourceI: fixes callee1 :: "'a \<Rightarrow> 'b \<Rightarrow> ('c \<times> 'a) spmf"   and callee2 :: "'d \<Rightarrow> 'b \<Rightarrow> ('c \<times> 'd) spmf"   and A :: "'b set"   and s :: "'a"   and s' :: "'d" assumes "A \<turnstile>\<^sub>C callee1(s) \<approx> callee2(s')" shows "A \<turnstile>\<^sub>C obsf_oracle callee1(OK s) \<approx> obsf_oracle callee2(OK s')"
max_min_set_dual: shows "(`) \<partial> \<circ> max_set = min_set \<circ> (`) \<partial>"
refine_IdD: fixes c :: "'a nres"   and a :: "'a nres" assumes "c \<le> \<Down> Id a" shows "c \<le> a"
V_def: fixes c :: "nat \<times> nat \<Rightarrow> 'c" shows "Graph.V c \<equiv> {u. \<exists>v. (u, v) \<in> Graph.E c \<or> (v, u) \<in> Graph.E c}"
normalize_quot_id: fixes x :: "'b \<times> 'b" assumes "x \<in> normalized_fracts" shows "normalize_quot x = x"
wb_prism_def: fixes x :: "'c \<Longrightarrow>\<^sub>\<triangle> 'd" shows "wb_prism x \<equiv> (\<forall>v. match\<^bsub>x\<^esub> (build\<^bsub>x\<^esub> v) = Some v) \<and> (\<forall>s v. match\<^bsub>x\<^esub> s = Some v \<longrightarrow> s = build\<^bsub>x\<^esub> v)"
neq_iff: fixes less_eq :: "'g \<Rightarrow> 'g \<Rightarrow> bool"   and less :: "'g \<Rightarrow> 'g \<Rightarrow> bool"   and x :: "'g"   and y :: "'g" assumes "class.linorder less_eq less" shows "(x \<noteq> y) = (less x y \<or> less y x)"
wls_subst_Op_simp: fixes ys :: "'varSort"   and Y :: "('index, 'bindex, 'varSort, 'var, 'opSym) qTerm set"   and delta :: "'opSym"   and inp :: "'index \<Rightarrow> ('index, 'bindex, 'varSort, 'var, 'opSym) qTerm set option"   and binp :: "'bindex \<Rightarrow> ('index, 'bindex, 'varSort, 'var, 'opSym) qAbs set option"   and y :: "'var" assumes "wls (asSort ys) Y"   and "wlsInp delta inp"   and "wlsBinp delta binp" shows "Op delta inp binp #[Y / y]_ys = Op delta (inp %[Y / y]_ys) (binp %%[Y / y]_ys)"
indoc_appendI2: fixes ind :: "'a \<Rightarrow> 'a \<Rightarrow> bool"   and a :: "'a"   and u :: "'a list"   and v :: "'a list" assumes "traces ind"   and "a \<notin> set u"   and "\<forall>a\<in>{a}. \<forall>b\<in>set u. ind a b"   and "traces.indoc ind a v" shows "traces.indoc ind a (u @ v)"
vector_choose_size: fixes c :: "real" assumes "0 \<le> c" obtains x :: "'c" where "norm x = c"
compact_subset_closed: fixes S :: "'a set"   and T :: "'a set" assumes "compact S"   and "closed T"   and "T \<subseteq> S" shows "compact T"
Kleene_iter_lpfp: fixes f :: "'c \<Rightarrow> 'c"   and p :: "'c"   and k :: "nat" assumes "mono f"   and "f p \<le> p" shows "(f ^^ k) bot \<le> p"
eqpoll_path_components_Euclidean_complements: fixes n :: "nat"   and S :: "(nat \<Rightarrow> real) set"   and T :: "(nat \<Rightarrow> real) set" assumes "closedin (Euclidean_space n) S"   and "closedin (Euclidean_space n) T"   and "subtopology (Euclidean_space n) S homeomorphic_space subtopology (Euclidean_space n) T" shows "path_components_of (subtopology (Euclidean_space n) (topspace (Euclidean_space n) - S)) \<approx> path_components_of (subtopology (Euclidean_space n) (topspace (Euclidean_space n) - T))"
T3: shows "\<forall>A. \<forall>x\<in>carrier - A. A \<subseteq> carrier \<and> A closed \<longrightarrow> (\<exists>B. \<exists>U\<in>nhds x. B open \<and> A \<subseteq> B \<and> B \<inter> U = {})"
simps_1: shows "cospan_shape.comp cospan_shape.AA cospan_shape.AA = cospan_shape.AA"
in_hhomE: fixes \<mu> :: "'a"   and a :: "'a"   and b :: "'a" assumes "S.in_hhom \<mu> a b" obtains "S.arr \<mu>" and "S.obj a" and "S.obj b" and "S.src \<mu> = a" and "S.trg \<mu> = b"
admits_diagonal_reduction_imp_exists_algorithm_is_SNF: fixes A :: "'b mat"   and m :: "nat"   and n :: "nat" assumes "A \<in> carrier_mat m n"   and "admits_diagonal_reduction A" shows "\<exists>algorithm. is_SNF A (algorithm A)"
foldl1_map_ys: shows "foldl1 f2 (map (h2 i) ys) \<noteq> Two"
assms_1: shows "\<langle>c \<and> t\<rangle> \<le> n"
exec_gpv_oracle_bisim_bad_invariant: fixes bad2 :: "'b \<Rightarrow> bool"   and s2 :: "'b"   and X_bad :: "'c \<Rightarrow> 'b \<Rightarrow> bool"   and s1 :: "'c"   and X :: "'c \<Rightarrow> 'b \<Rightarrow> bool"   and bad1 :: "'c \<Rightarrow> bool"   and \<I> :: "('d, 'e) \<I>"   and I1 :: "'c \<Rightarrow> bool"   and I2 :: "'b \<Rightarrow> bool"   and oracle1 :: "'c \<Rightarrow> 'd \<Rightarrow> ('e \<times> 'c) spmf"   and oracle2 :: "'b \<Rightarrow> 'd \<Rightarrow> ('e \<times> 'b) spmf"   and gpv :: "('f, 'd, 'e) gpv" assumes "if bad2 s2 then X_bad s1 s2 else X s1 s2"   and "bad1 s1 = bad2 s2"   and "\<And>s1 s2 x. \<lbrakk>X s1 s2; x \<in> outs_\<I> \<I>; I1 s1; I2 s2\<rbrakk> \<Longrightarrow> rel_spmf (\<lambda>(a, s1') (b, s2'). bad1 s1' = bad2 s2' \<and> (if bad2 s2' then X_bad s1' s2' else a = b \<and> X s1' s2')) (oracle1 s1 x) (oracle2 s2 x)"   and "\<And>s2. \<lbrakk>bad2 s2; I2 s2\<rbrakk> \<Longrightarrow> callee_invariant_on oracle1 (\<lambda>s1. bad1 s1 \<and> X_bad s1 s2) \<I>"   and "\<And>s1. \<lbrakk>bad1 s1; I1 s1\<rbrakk> \<Longrightarrow> callee_invariant_on oracle2 (\<lambda>s2. bad2 s2 \<and> X_bad s1 s2) \<I>"   and "\<And>s1 x. \<lbrakk>bad1 s1; I1 s1; x \<in> outs_\<I> \<I>\<rbrakk> \<Longrightarrow> lossless_spmf (oracle1 s1 x)"   and "\<And>s2 x. \<lbrakk>bad2 s2; I2 s2; x \<in> outs_\<I> \<I>\<rbrakk> \<Longrightarrow> lossless_spmf (oracle2 s2 x)"   and "lossless_gpv \<I> gpv"   and "\<I> \<turnstile>g gpv \<surd>"   and "callee_invariant_on oracle1 I1 \<I>"   and "callee_invariant_on oracle2 I2 \<I>"   and "I1 s1"   and "I2 s2" shows "rel_spmf (\<lambda>(a, s1') (b, s2'). bad1 s1' = bad2 s2' \<and> (if bad2 s2' then X_bad s1' s2' else a = b \<and> X s1' s2')) (exec_gpv oracle1 gpv s1) (exec_gpv oracle2 gpv s2)"
that: fixes p :: "'t \<Rightarrow>\<^sub>0 'b" assumes "is_red A p"   and "\<not> is_red B p" shows "thesis"
d1: fixes x' :: "real" assumes "x' \<in> {0..1}"   and "norm x' < d1" shows "dist (g2 x') (g2 0) < e / 2"
equiv_class_eq: fixes A :: "'b set"   and r :: "('b \<times> 'b) set"   and a :: "'b"   and b :: "'b" assumes "equiv A r"   and "(a, b) \<in> r" shows "r `` {a} = r `` {b}"
icard_UNIV_nat: shows "icard UNIV = \<infinity>"
wellformed_item_derives: fixes x :: "item" assumes "wellformed_item x" shows "derives [item_nonterminal x] (item_rhs x)"
assms_4: fixes A :: "'a trm"   and x :: "'a"   and T :: "PreSimplyTyped.type" assumes "P A" shows "P (Fn x T A)"
remdups_filter: fixes P :: "'g \<Rightarrow> bool"   and xs :: "'g list" shows "remdups (filter P xs) = filter P (remdups xs)"
mset_append: fixes xs :: "'d list"   and ys :: "'d list" shows "mset (xs @ ys) = mset xs + mset ys"
points_index_alt_def: fixes point_set :: "'b set"   and block_collection :: "'b set multiset"   and ps :: "'b set" assumes "incidence_system point_set block_collection" shows "block_collection index ps = size (filter_mset ((\<subseteq>) ps) block_collection)"
IH_2: shows "setops\<^sub>s\<^sub>s\<^sub>t (map snd (filter (\<lambda>s. is_LabelN n s \<or> is_LabelS s) B)) \<subseteq> setops\<^sub>s\<^sub>s\<^sub>t (map snd (filter (\<lambda>s. is_LabelN n s \<or> is_LabelS s) (A @ B)))"
cospan_\<nu>\<pi>: shows "C.cospan \<nu>\<pi>.leg0 \<rho>.leg1"
gr_zeroI: fixes n :: "'c multiset" assumes "n = {#} \<Longrightarrow> False" shows "{#} \<subset># n"
assms_1: shows "a \<in>\<^sub>\<circ> \<CC>\<lparr>Arr\<rparr>"
varset_action_def: fixes a :: "('b, bool) fmap \<times> ('b, bool) fmap"   and varset :: "'b set" shows "varset_action a varset \<equiv> fmdom' (snd a) \<subseteq> varset"
drop_eq_Nil: fixes n :: "nat"   and xs :: "'g list" shows "(drop n xs = []) = (length xs \<le> n)"
pcr_complex_homo_coords_def: shows "pcr_complex_homo_coords \<equiv> rel_prod (=) (=) OO cr_complex_homo_coords"
CIObj: fixes T :: "(ZF, ZF) Axioms" shows "obj\<^bsub>CanonicalCat T\<^esub> = Ty\<^bsub>aS\<^bsub>T\<^esub>\<^esub>"
A7_Acc: shows "Acc level0 sA7 = {sA8, sA9}"
simps_2: fixes P :: "'a \<Rightarrow> bool"   and x :: "'a"   and xs :: "'a list" shows "dropWhile P (x # xs) = (if P x then dropWhile P xs else x # xs)"
IH: fixes Q :: "(char list \<Rightarrow> nat) \<Rightarrow> (char list \<Rightarrow> int) \<Rightarrow> bool" assumes "finite (support Q)" shows "\<turnstile>\<^sub>t {wp\<^sub>t c Q} c {Q}"
bounded_closure: fixes S :: "'b set" assumes "bounded S" shows "bounded (closure S)"
simps: fixes c\<^sub>A :: "(Eg1.var, aexp, bexp) Stmt"   and uu :: "Mode \<Rightarrow> Eg1.var set"   and uv :: "Eg1.var \<Rightarrow> nat"   and c\<^sub>C :: "(var\<^sub>C, aexp\<^sub>C, bexp\<^sub>C) Stmt"   and uw :: "Mode \<Rightarrow> var\<^sub>C set"   and ux :: "var\<^sub>C \<Rightarrow> nat" assumes "sifum_refinement_eg1_eg2" shows "abs_steps \<langle>c\<^sub>A, uu, uv\<rangle>\<^sub>A \<langle>c\<^sub>C, uw, ux\<rangle>\<^sub>C = abs_steps' c\<^sub>A c\<^sub>C"
is_filter_def: fixes F :: "('a \<Rightarrow> bool) \<Rightarrow> bool" shows "is_filter F \<equiv> F (\<lambda>x. True) \<and> (\<forall>P Q. F P \<longrightarrow> F Q \<longrightarrow> F (\<lambda>x. P x \<and> Q x)) \<and> (\<forall>P Q. (\<forall>x. P x \<longrightarrow> Q x) \<longrightarrow> F P \<longrightarrow> F Q)"
empty_map_add: fixes m :: "'a \<Rightarrow> 'b option" shows "Map.empty ++ m = m"
p_cost: shows "\<mu> c s v = ereal (awalk_cost c p)"
set_comp_red_monic_basis: fixes xs :: "('a \<Rightarrow>\<^sub>0 'c) list" shows "set (punit.comp_red_monic_basis xs) = punit.monic ` set (punit.comp_red_basis xs)"
sge: fixes ia :: "nat" assumes "ia < n" shows "row A k $ ia * col C j $ ia \<le> row A k $ ia * col B j $ ia"
inner_commute: fixes minus :: "'e \<Rightarrow> 'e \<Rightarrow> 'e"   and dist :: "'e \<Rightarrow> 'e \<Rightarrow> real"   and norm :: "'e \<Rightarrow> real"   and plus :: "'e \<Rightarrow> 'e \<Rightarrow> 'e"   and zero :: "'e"   and uminus :: "'e \<Rightarrow> 'e"   and scaleR :: "real \<Rightarrow> 'e \<Rightarrow> 'e"   and sgn :: "'e \<Rightarrow> 'e"   and uniformity :: "('e \<times> 'e) filter"   and "open" :: "'e set \<Rightarrow> bool"   and inner :: "'e \<Rightarrow> 'e \<Rightarrow> real"   and x :: "'e"   and y :: "'e" assumes "class.real_inner minus dist norm plus zero uminus scaleR sgn uniformity open inner" shows "inner x y = inner y x"
assms_4: fixes v :: "'var" shows "wf\<^sub>t\<^sub>r\<^sub>m (\<delta> v)"
INF_identity_eq: fixes A :: "'a set" shows "(INF x\<in>A. x) = Inf A"