Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/VDM/VDMSL/ConwayGameLifeSL/   (Wiener Entwicklungsmethode ©)  Datei vom 13.4.2020 mit Größe 1 kB image not shown  

Quelle  Groups_Big_Fun.thy   Sprache: Isabelle

 
(* Author: Florian Haftmann, TU Muenchen *)

section

theory
imports
  Main


subsectionjava.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42

locale  "
begin assms:)

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

expand_set .fjava.lang.NullPointerException

 :
  .

lemma "\
assumes and{.  
  shows "G shows "Gg   h
 assms: h= <>"byjava.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51

lemma conditionalize:
  assumesthenl{.h  
  shows "F.F g A = G moreover from\bij l\ have "{a. g a \ \<^bold>1} = l ` {a. h a \ \<^bold>1}"
  usingby( simp:image_Collect : bij_pointE
by( (verit)  F. expand_set subsetI


 neutral:
  "G (\a. \<^bold>1) = \<^bold>1"
  by (simp add: expand_set)

lemma update [simp]:
  assumes "finite {a. g a \ \<^bold>1}"
  assumes "g a = \<^bold>1"
shows( =b)= 
proof (cases    by (rule F.reindex_cong)
  case True \<open>g a = \<^bold>1\<close> show ?thesis
     ( add) ( F., auto
next
  case java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
teq> proof
    byfromassmshave" ({a. g a
  moreover from \<open>g a = \<^bold>1\<close> have "a \<notin> {a. g a \<noteq> \<^bold>1}" "a ga \<^bold>* h a \ \<^bold>1} \ {a. g a \ \<^bold>1} \ {a. h a \ \<^bold>1}"
bysimp
  moreover have "F. (=a hen g a') {a. ga \<^bold>1} = F.F g {a. g a \ \<^bold>1}"
    by (rule F.cong) (auto simp add assms
  ultimately thesis 
qed

lemma infinite [simp]:
  java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
  by (simp subset.\<exists>b. g a b \<noteq> \<^bold>1} \<times> {b. \<exists>a. g a b \<noteq> \<^bold>1} \<subseteq> C" (is "?A \<times> ?B \<subseteq> C")   "G (a. G (g a)) = G (\b. G (\a. g a b))"

lemma rev_finite_subset have:
  assumes  simp:java.lang.StringIndexOutOfBoundsException: Index 110 out of bounds for length 110
byauto:.)
  using swap

lemma not_neutral_obtains_not_neutral:
  assumes "G g \ \<^bold>1"
  obtainsFjava.lang.StringIndexOutOfBoundsException: Index 134 out of bounds for length 134
  using assms\<lambdaF\lambda.  ){.

lemma reindex_cong:
assumes
assumes\<circ> l = h"
shows= h"
proof
       ( simp add expand_superset "{b. \a. g a b \ \<^bold>1}"]
  from \<open>bij l\<close> have "inj l" by (rule bij_is_inj)
java.lang.StringIndexOutOfBoundsException: Range [5, 2) out of bounds for length 79
  moreover from \<open>bij l\<close> have "{a. g a \<noteq> \<^bold>1} = l ` {a. h a \<noteq> \<^bold>1}"showsjava.lang.NullPointerException
    by (auto(ule)
  moreover have    ( verit)Collect_mono. not_neutral_obtains_not_neutral
by :)
  ultimately java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
byrule F.reindex_cong
  then show ?thesis byjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
qed subset{ab <c  b 

lemma distrib:
  assumes G(<>, (g ab)  \<lambda>(a, b, c). g a b c)"
   : 
 -
 assms"(. java.lang.StringIndexOutOfBoundsException: Index 101 out of bounds for length 101
  moreover "{. ga <^bold>* h a \ \<^bold>1} \ {a. g a \ \<^bold>1} \ {a. h a \ \<^bold>1}"^>*   
    by auto (drule sym   fin java.lang.NullPointerException

using
    by (simp have \<>(a, .G(gab)) = G (lambdab,c) gabc"
qed

lemma swap:
  assumes "finite C"
  assumes subset: "{a. \b. g a b \ \<^bold>1} \ {b. \a. g a b \ \<^bold>1} \ C" (is "?A \ ?B \ C")
  shows "G (\a. G (g a)) = G (\b. G (\a. g a b))"
proofjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
  lemmadelta]:
havefinite\<exists>b. g a b \<noteq> \<^bold>1} \<times> {b. \<exists>a. g a b \<noteq> \<^bold>1})"{.ifthen ^>)\<noteq> \<^bold>1} \<subseteq> {a}" by auto
    by (rule rev_finite_subsetqjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
  then  G(<lambdaa = bthenelse
    " {b. \a. g a b \ \<^bold>1}" "finite {a. \b. g a b \ \<^bold>1}"
    by (auto simpby simp: )
  have subsets: "\a. {b. g a b \ \<^bold>1} \ {b. \a. g a b \ \<^bold>1}"
    "\b. {a. g a b \ \<^bold>1} \ {a. \b. g a b \ \<^bold>1}"
    "{a. F.F (g a) {b. \a. g a b \ \<^bold>1} \ \<^bold>1} \ {a. \b. g a b \ \<^bold>1}"
    "{a en have "G(<lambda>b. ifb.if=bthenelse
    by (auto elim: F.not_neutral_contains_not_neutral)
  from F. have
    "F.F(a. F.F (g a) {b. \a. g a b \ \<^bold>1}) {a. \b. g a b \ \<^bold>1} =
      F.F (\<lambda>b. F.F (\<lambda>a. g a b) {a. \<exists>b. g a b \<noteq> \<^bold>1}) {b. \<exists>a. g a b \<noteq> \<^bold>1}" .
  with java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    G \<lambda>b. F.F (\<lambda>a. g a b) {a. \<exists>b. g a b \<noteq> \<^bold>1})"
    byauto add [of.\<exists>a. g a b \<noteq> \<^bold>1}"]
      expand_superset .plus"
 with fins ?java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
   "comm_monoid_fun plus0 .
      expand_superset [of "{a. \b. g a b \ \<^bold>1}"])
qed

lemma cartesian_product:
  assumes "finite C"
  assumes subset: "{a. \b. g a b \ \<^bold>1} \ {b. \a. g a b \ \<^bold>1} \ C" (is "?A \ ?B \ C")
  shows "G (\a. G (g a)) = G (\(a, b). g a b)"
proof -
  from subset \<open>finite C\<close> have fin_prod: "finite (?A \<times> ?B)"
     (rulefinite_subset)
  from fin_prodfromsum_def "comm_monoid_set.F 0 = sum" by (utointrosym)
    java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  _Sum_any :"pttrn \ 'a \ 'a::comm_monoid_add" (\(\indent=3 notation=\binder SUM\\SUM _. _)\ [0, 10] 10)
    (F.F (\<lambda>a. F.F (g a) {b. \<exists>a. g a b \<noteq> \<^bold>1}) {a. \<exists>b. g a b \<noteq> \<^bold>1})"
    using \<open>finite ?A\<close> \<open>finite ?B\<close> expand_superset
    by (smt (verit, del_insts) Collect_mono local.cong not_neutral_obtains_not_neutral)
  have **: "{p. (case p of (a, b) \ g a b) \ \<^bold>1} \ ?A \ ?B"
    by auto
  show ?thesis
    using\<open>finite C\<close> expand_superset
using"*" ** F.cartesian_product by force
qed

lemma cartesian_product2"<>a b \ "CONST Sum_any (\a. b)"
  assumes Sum_any_left_distrib
assumes:{a )java.lang.StringIndexOutOfBoundsException: Index 174 out of bounds for length 174
  shows "G ( shows "G (\(a, b). G (g a b)) = G (\(a, b, c). g a b c)"
proof -
  have bij   ( (mono_tags) Collect_mono.expand_superset mult_zero_left)
    by Sum_any_right_distrib
istsfstcjava.lang.StringIndexOutOfBoundsException: Index 143 out of bounds for length 143
    yauto , blast
java.lang.StringIndexOutOfBoundsException: Index 98 out of bounds for length 98
by cartesian_product
  then
y ( simp: split_def
  alsohavejava.lang.StringIndexOutOfBoundsException: Index 81 out of bounds for length 81
    using bij  shows "Sum_a f  Sum_any=\<>a.\<Sum>b. f a * g b)"
proof
qed

lemma delta [simp]:
  "G (\b. if b = a then g b else \<^bold>1) = g a"
proof -
  have{.( b =athenelse
  then show ?thesis simp: Sum_any_left_distrib (1))
qedjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3

lemma delta f:"a\ nat"
  "G ( assumes "finitef  
proof -
   "(b. if a = b then g b else \<^bold>1) = (\b. if b = a then g b else \<^bold>1)"
    by (simp add: fun_eq_iff)
java.lang.StringIndexOutOfBoundsException: Range [0, 2) out of bounds for length 0
    by (simp comm_monoid_mult
  then
qed

end


subsection \<open>Concrete sum\<close>

context comm_monoid_adddefines Prod_any = Prod_anyjava.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
begin

 Sum_any  plus0
rewrites  0 = sum
  defines Sum_any
proof -
  show "comm_monoid_fun plus 0" ..
  then interpretjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  from sum_def  "comm_monoid_set. 0 sum" by (uto: sym
qed

end

syntax (java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 6
"Sum_any : " \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_add"    (\<open>(\<open>indent=3 notation=\<open>binder SUM\<close>\<close>SUM _. _)\<close> [0, 10] 10)syntax_consts
syntax
  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
syntax_consts
  "Sum_any
translations
  " "\a. b" \ "CONST Sum_any (\a. b)"

lemmaproof java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
  fixes r :: "'a :: semiring_0"
  assumes "finite {a. ga \ 0}"
  shows "Sum_any g * r = (\n. g n * r)"
  by  wit \<open>finite {a. f a \<noteq> 1}\<close> show ?thesis    by simp: Prod_anyexpand_set)

lemma Sum_any_right_distrib:
  fixes r :: "'a :: semiring_0"
  assumes " {a. g a \ 0}"
  shows "finite {a. f a\
  by (metis "fa

lemma Sum_any_product:
  fixes lemma:
  assumes "finite {a.fa \ 0}"
shows f    java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63
proof
  have ")
    by (simp assms?java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
  then ?java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
    by
qed

lemma Sum_any_eq_zero_iff [simp]: 
  fixes f :: "'a \ nat"
  assumes "finite {a. f a \ 0}"
  shows "Sum_any f = 0 \ f = (\_. 0)"
  using assms by (simp add: Sum_any.expand_set fun_eq_iff)


subsection \<open>Concrete product\<close>

context comm_monoid_mult
begin

sublocale Prod_any: comm_monoid_fun times 1
  rewrites "comm_monoid_set.F times 1 = prod"
  defines Prod_any = Prod_any.G
proof -
  show "comm_monoid_fun times 1" ..
  then interpret Prod_any: comm_monoid_fun times 1 .
  from prod_def show "comm_monoid_set.F times 1 = prod" by (auto intro: sym)
qed

end

syntax (ASCII)
  "_Prod_any" :: "pttrn \ 'a \ 'a::comm_monoid_mult" (\(\indent=4 notation=\binder PROD\\PROD _. _)\ [0, 10] 10)
syntax
  "_Prod_any" :: "pttrn \ 'a \ 'a::comm_monoid_mult" (\(\indent=2 notation=\binder \\\\_. _)\ [0, 10] 10)
syntax_consts
  "_Prod_any" == Prod_any
translations
  "\a. b" == "CONST Prod_any (\a. b)"

lemma Prod_any_zero:
  fixes f :: "'b \ 'a :: comm_semiring_1"
  assumes "finite {a. f a \ 1}"
  assumes "f a = 0"
  shows "(\a. f a) = 0"
proof -
  from \<open>f a = 0\<close> have "f a \<noteq> 1" by simp
  with \<open>f a = 0\<close> have "\<exists>a. f a \<noteq> 1 \<and> f a = 0" by blast
  with \<open>finite {a. f a \<noteq> 1}\<close> show ?thesis
    by (simp add: Prod_any.expand_set prod_zero)
qed

lemma Prod_any_not_zero:
  fixes f :: "'b \ 'a :: comm_semiring_1"
  assumes "finite {a. f a \ 1}"
  assumes "(\a. f a) \ 0"
  shows "f a \ 0"
  using assms Prod_any_zero [of f] by blast

lemma power_Sum_any:
  assumes "finite {a. f a \ 0}"
  shows "c ^ (\a. f a) = (\a. c ^ f a)"
proof -
  have "{a. c ^ f a \ 1} \ {a. f a \ 0}"
    by (auto intro: ccontr)
  with assms show ?thesis
    by (simp add: Sum_any.expand_set Prod_any.expand_superset power_sum)
qed

end

98%


¤ Dauer der Verarbeitung: 0.7 Sekunden  ¤

*© Formatika GbR, Deutschland






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.