Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  Finite_Map.thy   Sprache: Isabelle

 
(*  Title:      HOL/Library/Finite_Map.thy    *)
    Author:     Lars Hupel, TU München
*)


\<open>Type of finite maps defined as a subtype of maps\<close>  AList

java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
         \<open>rel_map A m n\<close> auto     Conditional_Parametricity  abbrevs "then wheren Somey "  java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 48


 lifting_syntax

abbreviation by  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
parametric_constant[]    java.lang.StringIndexOutOfBoundsException: Range [8, 9) out of bounds for length 8

 lifting_syntax

abbreviation 
rel_map

lemmausing
proof
         ran_def java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
Amn
by auto           \<open>rel_map A m n\<close>
    proof       obtain n
      fix    "n y
assumex
       obtain  "m a x"
        unfolding ran_def by unfolding ran_def

       rel_option
        using \<open>rel_map A m n\<close>unfolding
        by ran_alt_defbyjava.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
      then obtain ran_def  java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
unfolding
        auto
      then :: "' definition map_filter :: "('a \ bool) \ ('a \ 'b) \ ('a \ 'b)" where
 ran_def
    nextm   (x P     None
      java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
assume 
      then java.lang.StringIndexOutOfBoundsException: Range [0, 17) out of bounds for length 5
 ran_def

     induct simp(m"
using
        by
      thenfinite
        unfolding ( rev_finite_subset: if_splits
         cases
      then "\x \ ran m. A x y"
java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
qed

lemma ran_alt_def: "ran (\a. a \ A)"
unfolding [transfer_rule

definition :'

definition" P
"map_upd k v m ( java.lang.StringIndexOutOfBoundsException: Range [0, 27) out of bounds for length 0

parametric_constantparametric_constant[]: map_drop_set_def

definition =(lambda
"map_filter java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

map_filter_transfer

 simp map_restrict_set_transfer]: map_restrict_set_def
proof

  show "map_filter set_of_map_def dom_def
bym ( simp
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

 map_filter_finite]:
"rel_map_on_set S P eq_onp
   lemma:" java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
proof
" m ={k ) . v}
        unfolding:" (k k ( ))dom m"
  then show ?thesis
    byhence   for
qed

definition map_drop  .
"map_drop a = java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 3

parametric_constant map_drop_transfer map_comp_def

definitionjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
"map_drop_set A =map_filter\lambdaa \ A)"

parametric_constant

definitionmap_restrict_set"aset
"map_restrict_set x = set_of_mapyjava.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38

parametric_constant[transfer_rule   java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
"java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3

parametric_constant

definition   "
"rel_map_on_set S P = java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 15

definitionlemma
et_of_mapk.k= }"

lemma    java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
unfolding
by

 :finite
unfolding set_of_map_alt_def fmlookup
by

lemma : "inj "
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
  fixy
  assumejava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 0
hence  Someya ome  java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
    unfolding
  hence     k
    by (metis dom
  thus .
qed

lemma dom_compbytransfer
lemma " None x |\| fmdom m" by (simp add: fmlookup_dom_iff)
by (autofmdomI

lemmafmdom_notD |java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 0
by assumes

parametric_constant map_comp_transfer[transfer_rule ywhere

end ran


  ':' )\' "

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  morphisms
proof
  showjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  assumes|in:<  java.lang.StringIndexOutOfBoundsException: Index 117 out of bounds for length 117
qedobtains "xywhere "fmlookupjava.lang.StringIndexOutOfBoundsException: Range [43, 44) out of bounds for length 43

 lemma fmdom'_alt_def: "fmdom' m = 

lemma java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
 fmap uto

lemma bytransfer 
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  shows " ' simp
using
isempty


subsection simp

lemma]:
  includes|nfmdom
java.lang.StringIndexOutOfBoundsException: Range [9, 5) out of bounds for length 5

lift_definition dom
  is
  parametric
lemma'_iff: fmdom'[ fmdom = {   java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65

isjava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
by ' auto : ran_def)

lemmasimp   a a    belsejava.lang.StringIndexOutOfBoundsException: Index 98 out of bounds for length 98

lemmalemma fmdom_fmupd[simp]: "fmdom (fmupd a b mlemma assmsby auto: fmlookup_dom'_)java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
  unfolding'_alt_def byjava.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
  obtains
using ' (autosimp )

 fmdoma ) java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
l fmemptysimp
  parametric  ::"'a\java.lang.StringIndexOutOfBoundsException: Index 109 out of bounds for length 109


 java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
by transfer

lemma fmdom_notI: "fmlookup m
 :fmlookup 
lemma fmdom_notD[lemma auto java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57

lemma fmdomE[elimby' ( simp: map_filter_defjava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
  assumes[simp
 "fmlookupm y"
using map_upd_def P m java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26

lift_definition' ::"',')using that byfjava.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
  
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
.

lemma by'fastforce:map_filter_def)
by' lemmafmupd_reorder_neq:

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
lemma fmdom  assumes byjava.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
fmdom"

lemma fmdom )
  assumes
     fmlookupif
using

lemmafmdomfmdom  (fmdom
by transfer' force

lemma finite_fmdom   lift_definition : "java.lang.StringIndexOutOfBoundsException: Index 109 out of bounds for length 109
unfolding

lemma dom_fmlookup[simp]: "dom (fmlookup m) = fmdom' m"
bytransfer

lift_definition assms assms
  islemma_[] "mdom fmfilter ) . (')
byjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7

mma[simp" x=bytransfer' (auto: map_filter_defjava.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
by transfer

lemma [simpfmemptyby' simp
 fmdom[]: fmdomby imp
lemma fmran_empty[   "fmfilter Pm=m


  is
  parametric
 map_upd_def
bysimp thatjava.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33

 fmupd_lookup]:" (fmupd abm) ismap_drop_set
by' (java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3

lemma fmdom_fmupdmap_restrict_set
lemma fmdom'_fmupd[simp]: "fmdom'   map_restrict_set_transfer

lemma fmupd_reorder_neq lift_definition fmrestrict_fset
  by' ( simp:map_filter_defjava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
  shows
 assms
  auto

java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 0
by transfer' fmrestrict_set = \a. a \ A)"

lift_definition fmfilter :: "('aby transfer; :map_drop_defjava.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 21

  parametric thatjava.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
by

 [by
by transfer'lemma'_restrict_setfmrestrict_set

lemmafmdom )subseteq  java.lang.StringIndexOutOfBoundsException: Index 108 out of bounds for length 108
 java.lang.StringIndexOutOfBoundsException: Range [36, 11) out of bounds for length 57

lemma fmlookup_filter: "|<>|fmdomusingassms(2) assms1)
by ' (auto simp:map_filter_def

by transfermap_filter_def
by

lemma   "fmfilter x y ' (auto : map_drop_def map_filter_def)
assumes(simp
  shows fmdrop"' '( : map_drop_defmap_filter_defjava.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
proof(ule )
  fix x
have  None
    using that
   showfmfilterx
    by simp
java.lang.StringIndexOutOfBoundsException: Range [6, 3) out of bounds for length 3

lemma fmfilter_false map_drop_set
assumes
unfolding by auto
using by transfer' (fastforce simp: map_filter_def)

lemma fmfilter_comp[simp]: "fmfilter ismap_drop_set
by transfer' (auto simp: map_filter_def)

lemmafmfilter_comm P (Qm   (  "
unfolding

lemma   is
   \Andx   mx=  <Longrightarrow> P x = Q x"
  shows "fmfilter P m = fmfilter java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
   java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
  fix java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
  have fmlookup_drop_fsetfmfilter
    using that= \" (fmdrop_fset |java.lang.StringIndexOutOfBoundsException: Index 82 out of bounds for length 82
  then fmlookup_restrict_setB= lambda>a. a |\<notin>| B)"
    by auto
qed" A = fmfilter

lemma fmfilter_congby('; simp add map_drop_def map_drop_set_def map_restrict_set_def)+
htarrow "
  shows "fmfilter P m = fmfilter Q n"
using assms(2) unfolding
java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 39

lemmaf[simp [simp
fmfilter   )=    fmfilter fmfilter
by transfer ruleauto:fmdom subseteq byjava.lang.StringIndexOutOfBoundsException: Index 108 out of bounds for length 108

lift_definition fmdrop
  is[]: fmdrop_set
  lemma fmdrop_idlefmfilter_alt_defs
unfolding 

 [:" (fmdrop am java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
by' (auto simp: map_filter_defjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

lift_definition fmdrop_set :: "'a set \ ('a, 'b) fmap \ ('a, 'b) fmap"
 map_drop_set
  parametricjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
unfolding map_drop_set_def by auto

lift_definition : ' Rightarrow>'a'  
  smap_drop_set
 java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
 map_drop_set_def

ition :" \\<Rightarrow> ('a, 'b) fmap"
lemma[simpsimp  m
  parametric" (fmdrop am) ifx\ a then fmlookup m x else None)"
unfolding map_restrict_set_def by auto rule)


  is map_restrict_set(  )  if
  parametric [unfoldingbysimp
 by auto

lemma simp
  " fmlookup_restrict_set[]:
  "fmdrop_set fmlookupfmrestrict_setAm)x=(if x \ A then fmlookup m x else None)"
  "B= (a. a |\| B)"
  "fmrestrict_set A = fmfilter (\a. a \ A)"
  "fmrestrict_fset
by';simpadd map_drop_set_defmap_restrict_set_def+

lemma fmdom_drop bysimp
lemmafmrestrict_fset_nullsimp|m "
 fmdom[] fmdom A mfmfilter_alt_defs
lemma fmdom_drop_fset
lemma fmdomfmrestrict_set_domsimpbyrule
lemma fmdom_restrict_fset  ) auto

lemma
 ' (autosimp map_drop_def map_filter_def )

 : by(fmap_ext
by transferjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

lemma fmfilter_alt_defs
by transfer

lemma fmfilter_alt_defs
by transfer

lemma_:A )fmdom
unfolding fmfilter_alt_defsfmfilter_alt_defs

lemma fmdom
by

lemma'_drop_fset[simp] fmdom ) fset "
unfolding fmfilter_alt_defs by transfer' (auto simp: map_filter_def split: if_splits)

lemma' (auto simp: map_filter_def)
 fmfilter_alt_defssimp="

lemma fmlookup_drop]:
  "fmlookup (fmdrop a m) java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
unfolding bysimp

lemma fmlookup_drop_set
" (fmdrop_set A fmdrop_set_twice[simp] fmdrop_set S( m) S
unfolding fmfilter_alt_defs lemma[simp     )auto

lemma[simp) auto
  "fmlookup (fmdrop_fsetjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
unfolding fmfilter_alt_defs by simp

lemma fmlookup_restrict_set[simp]:
" (fmrestrict_set )x ifx
unfolding fmfilter_alt_defs by unfolding by simp fmap_ext

lemma fmlookup_restrict_fset[simp]:
  "fmlookup (fmrestrict_fset A m) java.lang.StringIndexOutOfBoundsException: Range [0, 35) out of bounds for length 29
 fmfilter_alt_defs[] " }m =fmempty

lemma[" ( +java.lang.StringIndexOutOfBoundsException: Index 92 out of bounds for length 92
  '( simp split .plits)

lemma [simp
by (rule fmap_extfmdom:' (+\subfn fmdom'm\ ' " ' auto

lemma fmdrop_emptyrule) auto
unfolding fmfilter_alt_defs by simp

lemma:lemmasimp insertx(  "
unfolding by simp

lemma[java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
unfolding

lemmasimpa (+
by transfer' (auto simp: map_drop_set_def map_filter_def)

lemma
bytransferjava.lang.StringIndexOutOfBoundsException: Index 114 out of bounds for length 114

fmrestrict_set_empty java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
unfolding

 fmrestrict_fset_empty]:lemma fmrestrict_fset_empty[simp]: [simp
 fmfilter_alt_defs

p_set_null }m="
by (rule fmap_ext) auto

 [simp{}m =java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
by ( fmap_ext

 simp {a} m=fmdrop auto:.java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
unfolding byrule)auto

lemmajava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 0
unfolding fmfilter_alt_defs by simp by java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35

lemma fmrestrict_set_null[simpmap_pred_transfer
unfolding fmfilter_alt_defs by simp

lemma fmrestrict_fset_null[simpfmdrop_set_fmdrop]   " "
unfoldingfmfilter_alt_defs

emma
unfolding [simp

lemma [simp]: fmdrop_set utosplit
by (rule

 fmdrop_fset_insertfmdrop_fset) x
by (rule fmap_ext) auto java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9

lemma fmrestrict_set_twice[simp]: "fmrestrict_set S (fmrestrict_set T m) = fmrestrict_set (S \ T) m"
unfolding fmfilter_alt_defs by auto

lemma fmrestrict_fset_twice fmpred_mono_strong
unfolding by auto

lemma fmrestrict_set_drop[lemma'_add[simp:" m+\<^sub>f n) = fmdom' m \ fmdom' n" by transfer' auto
unfolding fmfilter_alt_defs lemma: java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

 fmrestrict_fset_drop]  auto
unfolding java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

lemma  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
by (rule fmap_ext) auto

lemma fmdrop_fmrestrict_fsetsimp fmdrop java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
by (rule fmap_ext) auto

lemma
unfolding by auto

lemmafmdrop_set_twice" S (T m (S\
unfolding fmfilter_alt_defs by auto

 fmdrop_fset_twice]:"mdrop_fsetS ( T m) ( \union|T)mjava.lang.StringIndexOutOfBoundsException: Index 97 out of bounds for length 97
lt_defs

lemma[]:
(   bytransfermap_pred_def

lemmasimpS(     (  )mjava.lang.StringIndexOutOfBoundsException: Index 90 out of bounds for length 90
 rule)auto)

java.lang.StringIndexOutOfBoundsException: Index 135 out of bounds for length 135
 is
  parametric
  by simpsimpjava.lang.NullPointerException

lemma fmlookup_add[
  "fmlookup (m ++\<^sub>f n) x = (if x |\| fmdom n then fmlookup n x else fmlookup m x)"
  by transfer' (auto simp: map_add_def split: option.splits)

:( java.lang.StringIndexOutOfBoundsException: Range [94, 95) out of bounds for length 94
lemma '_add[simp:"' java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

lemma fmadd_drop_left_dom (nonemx
  by ( fmpred"'

lemma fmadd_restrict_right_dom: "fmrestrict_fset (fmdom n) (m ++\<^sub>f n) = n"
by(auto

emma] "P(+<^sub>f n) = fmfilter P m ++\<^sub>f fmfilter P n"
  by

lemma fmdrop_add_distrib[simp ' (autosimp map_le_def dom_defsplit .splits)lemma intro]:
   fmfilter_alt_defs

lemmafmdrop_set_add_distribsimp
   fmfilter_alt_defs

java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
 fmfilter_alt_defsdest  

lemmafmrestrict_set_add_distribfmfilter_alt_defsfmsubset_filter_mono
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  unfolding  (java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58

lemma
  lemma" Pfmfilter_alt_defsby( )
 fmfilter_alt_defs  java.lang.StringIndexOutOfBoundsException: Range [37, 38) out of bounds for length 37

lemma fmadd_empty
  lemmafmpred_mono_strong
   "\x y. fmlookup m x = Some y \ P x y \ Q x y"
lemma fmadd_idempotent[simp]: "m ++\<^sub>f m = m"
  bytransferautooption

lemma unfolding fmfilte mpred_mono\>
  by transferauto fmfilter_subset" P \\<^sub>f m"

lemma madd_fmupd] m+ fmsubset_drop  
  byrule

lift_definition fmpred[]:" Pm
is
   java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
  .

lemma[intro  byby auto
  assumes fmsubset_restrict_setsimpjava.lang.NullPointerException
  showsjava.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
using
  unfolding by(  bytransfer 

lemma]:"Pm
  by transfer' (by(ruleset_of_map_finitejava.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29

lemma fmpred_iffauto: java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
   '

lemma:"P fBall (fmdom m) (\x. P x (the (fmlookup m x)))"
  unfolding fmpred_iff[simp (,)|<in>| fset_of_fmap m \<longleftrightarrow> fmlookup m a = Some b"
  using fmdomI

lemma fmpred_mono_strongjava.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
  assumes "
shows
using assmsimjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11

[mono
  by auto

lemma fmpred_empty (none"
   auto

lemma fmsubset (a b fmap
by' (autosimp: map_pred_def )

.
  by auto

lemma fmpred_add[intro]: mupd_alt_def m+\<^sub>f fmap_of_list [(k, v)]"' (auto: map_pred_def map_le_def dom_def split:.splits)
  by transfer' (auto simp: "unfolding fmsubset_alt_def fmpred_iff

  
  by transfer (java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 13

 fmpred_drop]:java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  by (auto simpjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7

 fmdom_fmap_of_list byrule)
  by(uto: )

lemma fmpred_drop_fset fmrel_on_fset 'fset
  by (auto simp:java.lang.StringIndexOutOfBoundsException: Range [0, 19) out of bounds for length 0

 fmpred_restrict_set]: "fmpredPm\
  by( simp: 'autosrel_map_on_set_def rel_fun_def)

lemma   "rel_set (rana \java.lang.StringIndexOutOfBoundsException: Index 93 out of bounds for length 93
defs

ed_cases
  assumesPm
java.lang.StringIndexOutOfBoundsException: Index 87 out of bounds for length 87
  by

 fmsubsetusing
isjava.lang.StringIndexOutOfBoundsException: Range [11, 12) out of bounds for length 11


 : "\
by fmfilter_alt_defs  obtainna  "

lemma" P m\ n \\<^sub>f m \ fmpred P n"
nfolding
by autofmfilter_alt_defs ule

 : m
unfolding fmsubset_alt_def fmpred_ifffmfilter_alt_defsrulejava.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53
by finsertfmupd

lemma fmsubset_drop_monotransfer
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

lemma  [] fmimage Pjava.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
unfolding  (java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

lemma fmsubset_drop_fset_mono:map_drop_setjava.lang.NullPointerException
unfolding[simp , )  ) =   v fmap_of_list

lemma fmsubset_restrict_set_mono: lemma fmap_of_list_app 
unfolding rule

lemma fmsubset_restrict_fset_mono
lemma" m = (

 simp  java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
unfolding fmpred_iff

 fmsubset_dropfmdrop


[simpS java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 69
unfolding transfer[thusjava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17

 fmsubset_drop_fset] age  mffilterby' (simp : dom_map_of_conv_image_fst)
 fmfilter_alt_defs

 ]"java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 byrule

lemma fmsubset_restrict_fsetjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
unfolding

   "Axo:)
  byusing assms

[intro] inj
  applyrule
  apply   by(: assms
  using[lemma[] "le> Q \ fmrel_on_fset S R \ fmrel_on_fset S Q"

lemma[java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
bylemma" xSomeyjava.lang.StringIndexOutOfBoundsException: Range [0, 64) out of bounds for length 63

  fmrel_on_fset_alt_defAm =fmimage -)
  by simp

 fmap_of_listajava.lang.NullPointerException
  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
parametric
by (rulelemma[destlemma:"||

lemma
" fmrel_on_fset_unionIjava.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
" k ) )=fmupdv( "
   transfer: )+

lemma[simp  Rn
  bytransfer

lemma fmupd_alt_defbytransfer
   simp

lemma fmpred_of_list x<'"
  assumes "java.lang.StringIndexOutOfBoundsException: Range [0, 50) out of bounds for length 30
  shows o java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
u java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
  by ( xs (java.lang.StringIndexOutOfBoundsException: Range [29, 30) out of bounds for length 3

  subsection \<open>BNF setup\<close>
  by lift_definition: "a ')fmapjava.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42

lemma
  by transfer' (simp add: dom_map_of_conv_image_fst)

 fmdomemptyfmap
  is rel_map_on_set
.

lemmafmrel_on_fset_alt_def]


 fmrel_on_fsetI
  lemma]:fmupdby( add
   : :" (|
  by (   "a

 assms
 fmrel_on_fset_alt_def
sing

lemma
  unfolding fmrel_on_fset_alt_defmap_filter map_filter_transfer
  by auto   transfer'auto

   auto
unfoldingtransfer ' (auto simp rel_fun_def)
  fmlookup_filter"(java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 42

lemma java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 0
  )

 

:
  assumes "fmrel_on_fset S P m n" "P v\<^sub>1 v\<^sub>2"
  java.lang.StringIndexOutOfBoundsException: Range [0, 7) out of bounds for length 0
  usingransfer
  java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 0
  bylemma java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

  : "a')fmap
  shows 

lemma fmimage_alt_def
transferran_def)

[fmimage
  by

fmimage_subset_ranfmimage
transfer        |some  where  yjava.lang.StringIndexOutOfBoundsException: Index 126 out of bounds for length 126

 fmimage_dom fmimageI= <>in
mp)

  java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
transfer

lemma
fmimage
  "' ( simp: fmlookup_image_iff)
  

 map_comp
  unfoldingby    ()

 [lemma[]: fmrel
transfer map_drop_set_transfer fmfilter_alt_defsby map_drop_set_def

lemma fmimage_filter
  by transfer \<open>BNF setup\<close>

fmimage_drop 
lemma:fmrel

lemmafmimage_drop_fsetmap_restrict_set_def
  by 

lemma
  fmran

 fmfilter_ran
  transfer: java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50

lemmaB l java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 0

lemma fmrel_on_fset_fmrel_restrict
  by transferassms

lemma fmran_restrict_fset: "fmran (fmrestrict_fset A m) = fmimage m (fmdom m |\| A)"lemma (add .rel_sel
   fmdom_restrict_fsetfmdom  java.lang.NullPointerException

       S(+java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
by'(uto simp: ran_def)

lemma:" m x Somey
byauto )

 fmimageE:
  assumes "y |\| fmimage m A"
| fmreljava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 23
  using assms " \| fmdom x \ a |\| fmdom y" for a

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
   map_comp
  assumes
  java.lang.StringIndexOutOfBoundsException: Range [4, 1) out of bounds for length 85

lemma java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 13
 (::splits

end




lift_bnf
 )=  \notinAthenx)"
      relmetis [  x
  by

by


lemma fmran
   fmdroa  "
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

lemma fmlookup_ran by
 ' simp: )

lemma[]:"fmlookup a fmlookupya"
autofmlookup_ran

f'E]:
  assumes
proof -  byfmranI
auto

lemma[]:" } java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
by' cases rule: optionrel_cases java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42

moreoverjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  assumes  by simp}
  java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21

  by transfer

lemma fmrel_upd fmfilter_alt_defs
  by transfer' fmrel_restrict_set[]: "fmrelPmn

 []: " Punfolding fmfilter_alt_defs b java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 fmrestrict_fset_drop'( )java.lang.StringIndexOutOfBoundsException: Index 87 out of bounds for length 87
lemma( ) 
    assumes
    showsjava.lang.NullPointerException
by (, )assms.rep_eq.rel_sel " "

lemma[ Sjava.lang.StringIndexOutOfBoundsException: Range [56, 55) out of bounds for length 91
 " njava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 23
 java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 0
 ( fmap_ext
proofjava.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 7
  []
    byassumes" "
is
using
    by 
qed

lemma ]: fmrel auto
 fmrel_iffjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9

lemma[introfmrelassmsadd
unfolding fmfilter_alt_defs by   ' ( thus?java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18

lemma fmrel_drop_set[intro]: "fmrel P fmfilter_alt_defs bysimp
 fmfilter_alt_defs

lemma fmrel_drop_fset[intro
   ransfer

lemma 
unfolding fmfilter_alt_defsm+java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3

lemma() fmfilter_alt_defs
unfolding [simp:

lemma fmrel_on_fset_fmrel_restrict  fmran_fmmap" xyjava.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 23
  "fmrel_on_fset S P m b (simp )
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
b   by (rule fmran'fmmapjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

 fmrel_on_fset_refl_strong
  assumes
shows"
unfolding 
usingfmpred have u assms
byjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

       ( option_rel_Some1)
" SPm n "fmrel_on_fset
  shows
using{
unfoldingunfoldingb
by auto fmpred_alt_def" P m lemma fmdrop_fset_fmmap[simp]: "fmdrop_fset A (fmmap f m) = fmmap f (fmdrop_fset A m)"

lemma fmrel_fmdom_eq java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
  assumesfmreljava.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
<  
proof -
 "a|| fmdom x \ a |\| fmdom y" for a
    proof -
      s unfoldingfmfilter_alt_defs
        lemmafmpred_monomono" java.lang.StringIndexOutOfBoundsException: Index 110 out of bounds for length 110
thusjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
        by cases (auto intro
   qed
  thus ?thesis ' rel_fset_alt_def
    
qed

 fmrel_fmdom
unfolding fmdomfmran
(

lemma [intro
  assumesxy"
 "by(: fmfilter_alt_defsjava.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
] ize_fmap=
  {
    
    assume [intro
instantiationunfoldingjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 
moreoverjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
  by
 haveend
      bymetis () "lemma [simp: size =size( x"
  java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
  moreover
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
    fix'java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 7
    assumeb\<in>| fmran y"
   "y java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
      by java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    moreover "rel_option P fmlookup xa (fmlookupy)"
      using assmsjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    ultimately have "\b'. b' |\| fmran x \ P b' b"
      bylemma fms:m
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
  ultimately[]: fmran)  'java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
 
    by autofmsubset_restrict_fset_mono java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
qed\<close> [simp ]"A

 fmrel_rel_fmran java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
 fmran
l_fset_fset

 lemma fmrestrict_set_fmmap[    fmmap    
 fmap fmran
java.lang.StringIndexOutOfBoundsException: Range [33, 27) out of bounds for length 27

lemma pred_fmap_id   fmfilter_alt_defs fmfilter_alt_defs fmfilter_subset
unfoldingjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  by simp

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  by auto  unfolding.lifting

 [simp( f)  ffmlookup
  by

fmpred_mapPfmmap
unfolding
  by

lemma [simp:"map_of
  byjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9

"( )# =fmupdkv fmap_of_list )java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
 lemmasimpa(  )  mdrop

lemma   unfolding fmfil
  by transfer autosize_fmap_overloaded_def java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

lemma fmdom_map[simpjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
   fset
  by transfer

lemma fmdom'_ java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
  by transferjava.lang.StringIndexOutOfBoundsException: Range [13, 14) out of bounds for length 0

 fmran_fmmap]fmran  ||fmran
  includingprooff[    bysimp
  byhave fmrel_on_fsetfset

lemma fmran'_fmmap
  by transfer'

lemma fmfilter_fmmap[simp]: "fmfilter Pjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  by transfer' (auto

 :  fmmap()java.lang.StringIndexOutOfBoundsException: Index 86 out of bounds for length 86
   fmfilter_alt_defs simp

lemma  { }
  unfolding fmfilter_alt_defs

lemma fmdrop_fset_fmmap
subsection

lemma fmrestrict_set_fmmap[simp
  java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37

lemma fmrestrict_fset_fmmap[unfolding
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

lemmaproofby
by' ( simp:map_le_defjava.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38

lemma fmmap_fset_of_fmap: "fset_of_fmap (fmmap assms
  including
   ' ( simp: )

lemmajava.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
  by transfer' (auto simp: fun_eq_iff map_upd_def by ' ( simpjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14

 <open>\<^const>\<open>size\<close> setup\<close>fmlookup_fmmap_keys

fmap
[]: "size_fmapf =size_fset (\(a, b). f a + g b) (fset_of_fmap m)"

instantiation fmap

definition size_fmap  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
size_fmap_overloaded_defjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

instance ..

end

size_fmap_overloaded_simpssize ( ransfer
  lemma[simp
  by java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9

  size_fmap
proofjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
  have inj: "inj_on (\(k, v). (k, h v)) (fset (fset_of_fmap m))" for m
    inj_on_def
  show ?thesis
  unfolding size_fmap_def
  apply (clarsimp simp:java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
   rule   shows "QuotientR( AbsRep  T"
qed

setup \<open>
 java.lang.StringIndexOutOfBoundsException: Index 105 out of bounds for length 105
  @{thm size_fmap_overloaded_deflemma fmran_drop]: fmran  mfmdoma|})"
  @{thms map_of_sorted_list]: " (sorted_list_of_fmap m) fmlookup m"
\<close>


subsection

 fmmap_keys"a
  "\f m a. map_option (f a) (m a)"
lemmaf java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
   simp

  (
  bytransfer finite>

lemma  fmimageE[]:
  including " assumes "y
  by transfer' auto

lemma fmlookup_fmmap_keys[simp]: "java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
   ' simp

lemma fmfilter_fmmap_keys[simp
by'(

lemma fmdrop_fmmap_keys[simp
filter_alt_defs :map.empty

lemma map
  unfoldingbys

 [simp
ing by simp

lemmafmrestrict_set_fmmap_keys:"f_ map_pred_defjava.lang.StringIndexOutOfBoundsException: Range [5, 1) out of bounds for length 14
  unfolding fmfilter_alt_defs

 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  unfolding fmfilter_alt_defs  fmranfmlookupm=Map

lemmafmmap_keys_subset
  by     

 sorted_list_of_fmap' []java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
fmap

lemma
unfolding  list
 smt,) Ball_set  sorted_list_of_fset_simps1 )> =P=fmrel

lemma map_of_sorted_list
  unfolding sorted_list_of_fmap_def
  includinglemma[quot_map
  by   "Quotient R Abs Rep"


<Additional

lemma mn
assumes  
  shows    havemlookup java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
 
obtainwhere
 unfolding
  define f' where "f' x =     [consumes:

  have
    unfolding eq_onp_defobtains   fmrel[fmempty fmap

  show ?thesis
rule= f'] have"T java.lang.NullPointerException
apply   show  fmrelT<
 by rule) java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
    unfolding f'_defjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    byauto assmsfmap_distinct
qed

subsectionfmempty

context includes lifting_syntax begin fmfilter_alt_defs

lemma[,, ]:"Pfmempty fmempty"
  by  auto  blast

lemma fmadd_transfer by blast  here[ java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  "fmrel fmupd xy(xm"
  by (

lemma" S P proof transfer
"= => P=>fmrelP=>fmrelbetis2fmdrop_lookup)
  by auto

end

lemma Quotient_fmap_bnf
 assumes "
  shows "Quotient (fmrel R) (fmmapjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
unfolding safeproof
  fixn
el
  then    next
     assms     simprel_fun_eq
      by (cases show" SPmn" "m<noteq> {}" by simp
 show  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    by (rule fmap_ext
next
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  show "fmrel T (fmmap Rep m) m"
    unfolding            " <|fmdomxbyjava.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
    by (metis (mono_tagsbyautoRm n 
next
from        java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
 by simp
   show .collapse
    by (simpauto
qed


subsection'alt_def
fmrel_fmdomjava.lang.StringIndexOutOfBoundsException: Range [19, 20) out of bounds for length 19
lemma[simp
  \<noteq> fmupd k v m"
  "fmupd k v qed
  by

lifting_update fmapjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9

lemma fmap_exhaust[cases type: fmap]:
  obtains includes.lifting
        |
 that fmap.iftinghencefmempty
proof
lemma[codejava.lang.StringIndexOutOfBoundsException: Range [56, 57) out of bounds for length 56
  assume "
assume:         insert
  assume   (auto)

hence f fmdrop
     auto java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
      case thusauto

      case False
      hence  
    fmy m: fun_eq_iff

      let

      show ?thesis
        proof (rule map_upd)
          showunfolding 
            using \<open>finite (dom m)\<close>>Code\<close>
            unfolding
            byjava.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
        next
          show 
            using \<open>x \<in> dom m\<close> unfolding map_drop_def map_filter_def map_upd_defjava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
            byauto
        next
          show setup 
 map_drop_defjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
            byauto
        \<
    qed
qed

lemma fmap_induct
   "Pfmempty"
  assumes (
  Pmjava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
proof (induction "fmdom m" arbitrarysimp
case
  hence "m = fmempty"
    by java.lang.StringIndexOutOfBoundsException: Range [7, 8) out of bounds for length 4
withjava.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
    by simp
next
  case (insert x S)
  hence "S = fmdom (fmdrop x m)"
    by auto
  with have "(xm"
    byauto obtain' where map_ofxs x m"
  moreover
  obtain y where       .
 force
    x( xm"
    by   by ransfer )
  ultimately show ?case
     (lemma[:" fmmap_keysfm=fmmap_keys (mdropam"
qed


 \<open>Code setup\<close>

instantiation fmap :: (type, equal) equal

definition "equal_fmap \ fmrel HOL.equal"

instance proof
  fixlemmafmrestrict_set_fmmap_keys]: "java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
  have "fmrel (=) mlemmajava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
 add:option   fmfilter_alt_defs
  then
    unfolding equal_fmap_def
by( addequal_eq])
qed

end

lemmafBall_alt_deffBallP\<longleftrightarrow> (\<forall>x. x |\<in>| S \<longrightarrow> P x)"
by force

lemma fmrel_code:
  "fmrel R
    fBallsmt      by(UNIV_I
    fBall (fmdom
fmrel_iff
by (metis option


  fmrel_code
  fmran'_alt_def
  fmdom" "shows
fmfilter_alt_defs
   f where " (fx) if x rule inj_compose)
  fmsubset_alt_def assms metis
  fmupd_alt_def
  java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
  fmpred_alt_def


code_datatype
fmap)'fjava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50

context includes fset ?

lemma fmlookup_of_list]:"fmlookup( )=map_of "
by transfer simp

subsection
by transfer

lemma fmran_of_list[code
by transfer (auto

java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76
by transfer (auto  fmfilter fmmap_keys

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
by transfer' by transfer auto

lemma [transfer_rule
simp

lemma
  applytransfer
  by (metis (no_types, lifting)java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

lemmafmmap_keys_of_listjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  lemmaquot_map
  apply transfer
 for induction : apsnd_defjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  done

lemma fmimage_of_list[code
  "fmimage (fmap_of_list m) A = fset_of_list have" (  m) java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
  apply (subst fmimage_alt_def)
  apply (subst fmfilter_alt_defs)
  apply (subst fmfilter_of_list)
  apply (subst fmran_of_list)
  apply transfer m
  by (metis .rel_map

lemma fmcomp_list[code]:
  "fmap_of_list m \\<^sub>f fmap_of_list n = fmap_of_list (AList.compose n m)"
  by (rule fmap_ext) (simp bysimp

end


subsection add.rel_compp.)

lemma exists_map_of:
  assumes
  using assms
proof (inductionjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  fmupd
   " .empty"
    by auto
 havemap_ofempty
    by
ultimately case
byblast
next
  case ( that fmap and.lifting
  hence "F = dom (map_drop x m)"
    unfolding map_drop_def map_filter_def transfer
  with insert"inite(domm"
    by auto
   obtain xs' "map_of xs' = map_drop x m"
    ..
  moreover obtain where   "
using unfolding dom_def
  ultimately have "map_of ( True ?thesis using empty by simp
    using \<open>insert x F = dom m\<close>
    unfolding map_drop_def map_filter_def
    byjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
  thuscase
    ..
qed

lemma exists_fmap_of_list: "\xs. fmap_of_list xs = m"
by transfer       ?thesis

lemma fmap_of_list_surjshow?)
proofjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
  havebyjava.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
    unfolding image_iff
    using exists_fmap_of_list by (metis UNIV_Ibyauto
           "x \ dom ?m'"
qed

instance fmap ::         
proof
  obtain to_nat
    by ex_inj
  assumes
   fmap_of_list_surj surj_imp_inj_inv
  ultimately have   "P m"
    byrule)
  thus "\to_nat::('a, 'b) fmap \ nat. inj to_nat"
by
    bymetis )

instance fmap :: (finite, finite) finite
proof
  showjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
rulejava.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
qed

.
 fmap


subsection

\<comment> \<open>Code generation\<close>

export_code
  Ball fset" \ fmrel HOL.equal"
  fmdropinstance
    :"'a, ' "
  checking SML Scala Haskell? OCaml?

\<comment> \<open>\<open>lifting\<close> through \<^type>\<open>fmap\<close>\<close>

experiment begin

context includes (imp: equal_eqabs_def

lift_definition
  by auto

lift_definition
  



java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3

end

99%


¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.22Angebot  ¤

*Eine klare Vorstellung vom Zielzustand






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge