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

Benutzer

Quelle  Preliminaries.thy

  Sprache: Isabelle
 

(* Author: Andreas Lochbihler, ETH Zurich
   Author: Joshua Schneider, ETH Zurich *)


section Preliminaries

theory Preliminaries imports
  Main
begin

alias Grp = BNF_Def.Grp
alias vimage2p = BNF_Def.vimage2p

lemma Domainp_conversep: "Domainp R-1-1 = Rangep R"
  by auto

lemma Grp_apply: "Grp A f x y y = f x x A"
  by (simp add: Grp_def)

lemma conversep_Grp_id: "(Grp A id)-1-1 = Grp A id"
  by (auto simp add: fun_eq_iff Grp_apply)

lemma eq_onp_compp_Grp: "eq_onp P OO Grp A f = Grp (Collect P A) f"
  by (auto simp add: fun_eq_iff eq_onp_def elim: GrpE intro: GrpI)


consts relcompp_witness :: "('a ==> 'b ==> bool) ==> ('b ==> 'c ==> bool) ==> 'a × 'c ==> 'b"

specification (relcompp_witness)
  relcompp_witness1: "(A OO B) (fst xy) (snd xy) ==> A (fst xy) (relcompp_witness A B xy)"
  relcompp_witness2: "(A OO B) (fst xy) (snd xy) ==> B (relcompp_witness A B xy) (snd xy)"
  apply(fold all_conj_distrib)
  apply(rule choice allI)+
  apply(auto)
  done

lemmas relcompp_witness[of _ _ "(x, y)" for x y, simplified] = relcompp_witness1 relcompp_witness2

hide_fact (open) relcompp_witness1 relcompp_witness2

lemma relcompp_witness_eq [simp]: "relcompp_witness (=) (=) (x, x) = x"
  using relcompp_witness(1)[of "(=)" "(=)" x x] by (simp add: eq_OO)


lemma Quotient_equiv_abs1: "[ Quotient R Abs Rep T; R x y ] ==> T x (Abs y)"
  unfolding Quotient_alt_def2 by blast

lemma Quotient_equiv_abs2: "[ Quotient R Abs Rep T; R x y ] ==> T y (Abs x)"
  unfolding Quotient_alt_def2 by blast

lemma Quotient_rep_equiv1: "[ Quotient R Abs Rep T; T a b ] ==> R a (Rep b)"
  unfolding Quotient_alt_def3 by blast

lemma Quotient_rep_equiv2: "[ Quotient R Abs Rep T; T a b ] ==> R (Rep b) a"
  unfolding Quotient_alt_def3 by blast

end

Messung V0.5 in Prozent
C=97 H=100 G=98

¤ Dauer der Verarbeitung: 0.6 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen



NIST Cobol Testsuite



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 und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

      Eigene Quellcodes
      Fremde Quellcodes
     Quellcodebibliothek
      Suchen

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge