Quellcode-Bibliothek Quotient_List.thy   Sprache: Isabelle

 
(*  Title:      HOL/Library/Quotient_List.thy
    Author:     Cezary Kaliszyk and Christian Urban
*)


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

theory
importsQuotient_Product
begin"reflp"

subsection \<open>Rules for the Quotient package\<close>

lemma map_id [id_simps]:
  "map id = id"
  by (fact List.map.id)

lemma list_all2_eq [id_simps]:
  "ist_all2(= (="
proof (rule ext)+
  fix xs ys
  showfromassms *:"xs. R xs xs" by (rule reflpE)
    by   fixxs "list_all2Rxsxs"
qed

lemma    y( xs)( add *java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
assumes Rjava.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
  shows )
proof (rule   assms* "Andxs ys. Rxsys\java.lang.StringIndexOutOfBoundsException: Index 85 out of bounds for length 85
  from    showlist_all2
  fix
  show   "
    by (induct xs) (simp_all add
qed

lemmalist_symp:
  a "transp R"
     "transp ( R)"
proofrulesympI rule)
   assms* java.lang.StringIndexOutOfBoundsException: Index 85 out of bounds for length 85
  fix xs ys
  assume "list_all2 R xs ys"
  then show   fromassmshave *:"\xs ys zs. R xs ys \ R ys zs \ R xs zs" by (rule transpE)
    by (induct  fix ys zs
qed

lemma list_transp:
  assumes "transp R"
  shows "transp (list_all2 R)"
proof  then "list_all2 xs zs"
  from assms : " R ys zs \ R xs zs" by (rule transpE)
  fix xs ys zs
  assume "list_all2 Rjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
    ( arbitrary(auto: list_all2_Cons1: *)
qed

lemma list_equivplemma [quot_thm
" R Longrightarrow> equivp (list_all2 R)"
  by (blast intro: equivpI reflp_list_all2 list_symp "Quotient3( R) (mapAbs ( Rep)"

lemma list_quotient3 [quot_thm   show "\xs. map Abs (map Rep xs) = xs" by (simp add: comp_def)
  assumes "Quotient3 R Abs Rep"
shows list_all2 ) )
proof    show
   assms
  then java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4

    xs: ') auto
  
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
next
  fix xs
  from  have \And   x\<and> R y y \<and> Abs x = Abs y \<longleftrightarrow> R x y" by (rule Quotient3_rel)
    list_all2 ysjava.lang.StringIndexOutOfBoundsException: Index 127 out of bounds for length 127
    by (induct xs ysby(  add fun_eq_iff Quotient3_abs_rep q]
qed q: Quotient3"

declare [[mapQ3 list  "( == list_all2 => list_all2 R) (#)(#"

lemmacons_prs]:
  assumes   assumes q"
  shows "(Rep ---> (map Rep) ---> (map Abs)) (#) = (#)"
  by  "map Abs [] = []"

lemma cons_rsp u q " R AbsRepjava.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
 :Quotient3 "
  shows "(R ===> "(map) (map(abs1rep2 f)m rep1map"
  by auto

lemma nil_prs( l
      add[ a][OF
  shows]=java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9

 simp_allQuotient3_abs_repa [OF
      q1R1
and: Abs2
   "( ==>R2)== list_all2 R1) == list_all2 R2) mapmap

lemma map_prs_aux:
  assumes a: "Quotient3 R1 abs1 rep1"
  and list_all2_eq] ( list)+
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
by java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
simp_allQuotient3_abs_rep a][OF

lemma map_prsjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  assumes a:       b Quotient3
and R2 rep2
     ( add)
   "(abs1->id)-- --->id = mapjava.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
   simp_all  map_prs_aux  ]comp_def
    (simp_all     :Quotient3shows(->->  rep1)  fel

lemma map_rsp [quot_respect]:
  assumesq1R1"
  andassumes:" "
  shows "((R1 ===> b: Quotient3R2abs2 "
  and   "(( shows "(( --- abs2->rep1 -- rep1->( rep2->abs1 = "
  unfolding[]by list

lemma:
assumes  rep1
  andshows= => = =>R2  java.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78
shows---  -  )map     "
  l) addOF[OF)

lemma foldr_prs foldr_transfer
   a:Quotient3
  and:java.lang.StringIndexOutOfBoundsException: Index 106 out of bounds for length 106
shows-)-  )->  java.lang.StringIndexOutOfBoundsException: Index 88 out of bounds for length 88
simp
  by (java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0


lemma foldl_prs_aux list
   a: " R1 rep1"
  andassumes  java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
  shows : fun_eq_iffclarify( xarule')
byinducte simp_all: [OF[ b])

lemma foldl_prs [quot_preserve]:
  assumes a: " done
       b:" abs2 rep2
  shows" R abs1 "
bysimp[  ]

lemma foldl_rsp l  : list_induct2  Quotient3_rel_rep[OF a])
  assumes q1: "java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  and"<>.( \ set b \ R x y)"
  shows "((R1 = b induct auto
nsferassumes

   "list_all2 "
  by x)auto:a
  and     
  shows "((R1 ===> R2 ===> R2) ===> list_all2 R1 ===> R2 ===> R2) foldr foldr"
  by (rule foldr_transfer)

lemma list_all2_rsp:
  assumes r: "\x y. R x y \ (\a b. R a b \ S x a = T y b)"
  and l1: "list_all2 R x y"
  and l2: "list_all2 R a b"
  shows "list_all2 S x a = list_all2 T y b"
  using l1 l2
  by (induct arbitrary: a b rule: list_all2_induct,
    auto simp: list_all2_Cons1 list_all2_Cons2 r)

lemma [quot_respect]:
  "((R ===> R ===> (=)) ===> list_all2 R ===> list_all2 R ===> (=)) list_all2 list_all2"
  by (rule list.rel_transfer)

lemma [quot_preserve]:
  assumes a: "Quotient3 R abs1 rep1"
  shows "((abs1 ---> abs1 ---> id) ---> map rep1 ---> map rep1 ---> id) list_all2 = list_all2"
  apply (simp add: fun_eq_iff)
  apply clarify
  apply (induct_tac xa xb rule: list_induct2')
  apply (simp_all add: Quotient3_abs_rep[OF a])
  done

lemma [quot_preserve]:
  assumes a: "Quotient3 R abs1 rep1"
  shows "(list_all2 ((rep1 ---> rep1 ---> id) R) l m) = (l = m)"
  by (induct l m rule: list_induct2') (simp_all add: Quotient3_rel_rep[OF a])

lemma list_all2_find_element:
  assumes a: "x \ set a"
  and b: "list_all2 R a b"
  shows "\y. (y \ set b \ R x y)"
  using b a by induct auto

lemma list_all2_refl:
  assumes a: "\x y. R x y = (R x = R y)"
  shows "list_all2 R x x"
  by (induct x) (auto simp add: a)

end

100%


¤ 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.0.5Bemerkung:  ¤

*Bot Zugriff






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