
Renements in HOLCF Implementation of Interactive Systems Oscar Slotosch Fakultat fur Informatik der Technischen Universitat Munchen Renements in HOLCF Implementation of Interactive Systems Oscar Slotosch Vollstandiger Ab druckdervon der Fakultat fur Informatik der Technischen Universitat Munchen zur Erlangung des akademischen Grades eines Doktors der Naturwissenschaften Dr rer nat genehmigten Dissertation Vorsitzender UnivProf Dr rer nat habil Jurgen Eickel Prufer der Dissertation UnivProf Dr rer nat Dr rer nat habil Manfred Broy UnivProf Tobias Nipkow Ph D Die Dissertation wurde am bei der Technischen Universitat Munchen eingereicht und durch die Fakultat fur Informatik am angenommen Abstract In this thesis renement relations for the logic HOLCF are dened We compare rene ment relations dened by theory interpretations and by mo del inclusion We use these renements to implement abstract data typ es ADTs with LCF domains and continuous functions Therefore the implementation of ADTs maybe applied to the implementation of interactive and distributed systems sp ecied in HOLCF The implementation of interactive systems is embedded into the deductive software deve lopment pro cess Every development step corresp onds to a renement in HOLCF A de tailed classication of dierent situations in the developmentofinteractive and distributed systems is given For all p ossible development situations concrete renement metho ds are describ ed This allows us to prove the correctness of development steps by verifying the renement relation in HOLCF The renement relation is comp ositional and in some sit uations the metho ds improve the known metho ds for interaction renement by requiring less and more concrete pro of obligations and by a stronger comp ositionality result For the implementation of abstract data typ es in HOLCF twotyp e constructors are added to the Isab elle pro of system The subdom typ e constructor conservatively intro duces a sub domain of a LCF domain that is again a LCF domain The quot typ e constructor conservatively denes at quotient domains with resp ect to an arbitrary partial equivalence relation PER PERs are also the basis for a higher order predicate allowing us to express observability of higher order functions in HOLCF to characterize congruences Both typ e constructors are supp orted with metho ds and examples for the intro duction of continuous functions A standard library of ADTs is dened and the implementation of a WWW server is taken as an example and some critical development steps are veried with the Isab elle pro of system Acknowledgments Four years ago when I started to work at the group of Manfred BroyandTobias Nipkow with the plan to write a thesis I did not know how much work this would be and how much supp ort would be necessary Now I try to thank all who help ed me in doing this thesis First of all I like to thank my sup ervisors Manfred Broy and Tobias Nipkow Manfred Broy gave me the opp ortunity to work in the eld of formal metho ds and he directed me towards the concrete topic of my thesis Tobias Nipkow encouraged me to work with the Isab elle system and he improved the quality of the realization with his technical advice For the scientic and constructive discussions I thank my sup ervisors Sp ecial thanks go to Franz Regensburger for inventing the logic HOLCF and for intro ducing me into it For discussions ab out HOLCF domains and xed points I thank David von Oheimb I thank Birgit Schieder for carefully reading the pro ofs which I did not carried out in Isab elle Particular thanks go to all my colleagues from our department For comments on many parts of previous versions of my thesis I would like to thank Manfred BroyTobias Nipkow Bernhard Schatz Ursula Hinkel Ingolf Kruger Rudolf Hettler Konrad Slind Katharina Spies Birgit Schieder Bernhard Rump e Franz Regensburger David von Oheimb Eva A Geisb erger and Cornel Klein For help with L T X I also thank Franz Regensburger E Bernhard Rump e and Katharina Spies I furthermore want to thank Konrad Slind Rosemary Monahan Susen Werner Ingolf Kruger and Bernhard Schatz for p olishing up my sometimes rough English with their constructive comments Personally I am grateful to my family Esp ecially I would like to thank my father who gave me the energy for this work and Susanne for her love and patience Contents Intro duction and Concepts Motivation Deductive Software Development Traditional Software Development Formal Metho ds in Software Development Graphical Description Techniques Developmentof Interactive and Distributed Systems Implementation of Abstract Data Typ es Abstract Data Typ es Implementation Step Example Sets by Sequences Renement Requirements Consistency Mo dularity Development Logic and Language Related Work Goals Structure of the Thesis Renements in HOLCF HOLCF HOLCF Terms HOLCF Typ e Classes HOLCF Mo dels Conservative Extensions Data Typ es Executabilityand Pattern Matching Predened Typ e Constructors Mo del Inclusion in HOLCF Theory Interpretations Sub domains in HOLCF Motivation I II CONTENTS Theory Interpretation Sort Translation Constant Translation Term Translation Invariance and Preserving Functions Normalization Reduct of Mo dels b Mo del Construction Metho d for the Restriction Step Example BOOLEAN by NAT Renement for Restrictions Mo del Inclusion Intro ducing a Sub domain Invariance and Preserving Functions Intro ducing Executable Op erations Deriving an Induction Rule Co de Generation Metho d for the Restriction Step Example BOOLEAN by NAT Summary and Comparison of Restrictions The subdom Constructor in HOLCF Quotient Domains in HOLCF Motivation PERs Quotients and Congruences PERs Quotients Quotient Domains Observability and Congruence The Class eq Mo del Inclusion Metho d for the Quotient Step Denition of the PER Intro ducing a Quotient Domain Intro ducing Op erations Pro of Obligations Theory Interpretation Simple Sort Translation Simple Constant Translation Simple Translation Satisability Metho d for the Quotient Step Example State by Histories Simple Theory Interpretation Basis CONTENTS III Summary and Comparison of Quotients Other Approaches for Behavioural Implementations Context Induction over Programs Restricting the Programming Language Enco ding the Programming Language into the Logic Comparison of the Approaches Implementation of ADTs in HOLCF Metho d for the Implementation Using the Metho d Interface Situations Parameters of the Metho d Example Sets by Sequences Implementations in FOCUS Focus Notations Stream Pro cessing Functions Forms of Comp osition Renements for Interactive Systems Behavioural Renement Structural Renement State Renement State Elimination Schematic Implementations Communication Channel Development Restricted Communication Channel Development Interface Simulation Implementation of Comp.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages290 Page
-
File Size-