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

Benutzer

Quelle  Prover.thy

  Sprache: Isabelle
 

section Prover

theory Prover imports "Abstract_Completeness.Abstract_Completeness" Encoding Fair_Stream begin

function eff :: rule ==> sequent ==> (sequent fset) option where
  eff Idle (A, B) = Some {| (A, B) |}
eff (Axiom P ts) (A, B) = (if \P ts [] A \P ts [] B then Some {||} else None)
eff FlsL (A, B) = (if \ [] A then Some {||} else None)
eff FlsR (A, B) = (if \ [] B then Some {| (A, B [÷] \) |} else None)
eff (ImpL p q) (A, B) = (if (p \ q) [] A then
 Some {| (A [÷] (p \ q), p # B), (q # A [÷] (p \ q), B) |} else None)

eff (ImpR p q) (A, B) = (if (p \ q) [] B then
 Some {| (p # A, q # B [÷] (p \ q)) |} else None)

eff (UniL t p) (A, B) = (if \p [] A then Some {| (tp # A, B) |} else None)
eff (UniR p) (A, B) = (if \p [] B then
 Some {| (A, #(fresh (A @ B))p # B [÷] \p) |} else None)

  by pat_completeness auto
termination by (relation measure size) standard

definition rules :: rule stream where
  rules fair_stream rule_of_nat

lemma UNIV_rules: sset rules = UNIV
  unfolding rules_def using UNIV_stream surj_rule_of_nat .

interpretation RuleSystem λr s ss. eff r s = Some ss rules UNIV
  by unfold_locales (auto simp: UNIV_rules intro: exI[of _ Idle])

lemma per_rules':
  assumes enabled r (A, B) ¬ enabled r (A', B') eff r' (A, B) = Some ss' (A', B') || ss'
  shows r' = r
  using assms by (cases r r' rule: rule.exhaust[case_product rule.exhaust])
    (unfold enabled_def, auto split: if_splits)

lemma per_rules: per r
  unfolding per_def UNIV_rules using per_rules' by fast

interpretation PersistentRuleSystem λr s ss. eff r s = Some ss rules UNIV
  using per_rules by unfold_locales

definition prover mkTree rules

end

Messung V0.5 in Prozent
C=57 H=93 G=76

¤ Dauer der Verarbeitung: 0.11 Sekunden  (vorverarbeitet am  2026-06-10) ¤

*© 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 und die Messung sind 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