Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
1—Initial Ideas on Formal Methods
UIT2206: The Importance of Being Formal
Martin Henz
January 15, 2014
Generated on Wednesday 15th January, 2014, 09:54
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
1 Preliminaries
2 Hallmarks of a Formal Approach
3 Formal Systems in Information Technology
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Structure of the module
Intro (today)Formal reasoning techniques (Weeks 2 to 8)Formal methods in other disciplines (Weeks 9 to 12)
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Weekly structure
Lecture: Wednesdays 10–12Tutorials: two sessions on Fridays: 8–10 and 10–12starting next week
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Assessment
Class participation: 10%Tutorial participation: 10%Assignments: 20%Test (Week 9 or 10): 20%Presentation (Weeks 10 to 13): 20%Essay: 20%
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
1 Preliminaries
2 Hallmarks of a Formal ApproachDiscretenessNamingAbstractionReificationSelf-reference
3 Formal Systems in Information Technology
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Discreteness
Do atoms exist?
Brownian motion
Fundamental factNature is made up of discrete structures
Central dogma of molecular biologyDNA makes RNA makes protein
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Discreteness
Do atoms exist?Brownian motion
Fundamental factNature is made up of discrete structures
Central dogma of molecular biologyDNA makes RNA makes protein
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Discreteness
Do atoms exist?Brownian motion
Fundamental factNature is made up of discrete structures
Central dogma of molecular biologyDNA makes RNA makes protein
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Discreteness
Do atoms exist?Brownian motion
Fundamental factNature is made up of discrete structures
Central dogma of molecular biology
DNA makes RNA makes protein
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Discreteness
Do atoms exist?Brownian motion
Fundamental factNature is made up of discrete structures
Central dogma of molecular biologyDNA makes RNA makes protein
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Discreteness in Human Affairs
LanguageNatural language is made up of sounds, words, sentences. Allof these are discrete structures
PoliticsStates, counties, political parties etc are discrete, notcontinuous phenomena
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Discreteness in Human Affairs
LanguageNatural language is made up of sounds, words, sentences. Allof these are discrete structures
PoliticsStates, counties, political parties etc are discrete, notcontinuous phenomena
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Naming
John Stuart MillsNames have denotations, not connotations
Frege/RussellNames are essentially abbreviations for a collection ofproperties
A Theory of NamingNaming is a surprisingly poorly understood concept. 20thcentury philosophers have made significant progress. Example:Saul Kripke: Naming and Necessity
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Naming
John Stuart MillsNames have denotations, not connotations
Frege/RussellNames are essentially abbreviations for a collection ofproperties
A Theory of NamingNaming is a surprisingly poorly understood concept. 20thcentury philosophers have made significant progress. Example:Saul Kripke: Naming and Necessity
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Naming
John Stuart MillsNames have denotations, not connotations
Frege/RussellNames are essentially abbreviations for a collection ofproperties
A Theory of NamingNaming is a surprisingly poorly understood concept. 20thcentury philosophers have made significant progress. Example:Saul Kripke: Naming and Necessity
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Abstraction
DefinitionAbstraction is a process by which concepts are derived fromthe usage and classification of other (more “real” or “concrete”)concepts.
ScienceClassification of phenomena into discrete categories lies at theheart of many sciences. Example: taxonomy in biology
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Abstraction
DefinitionAbstraction is a process by which concepts are derived fromthe usage and classification of other (more “real” or “concrete”)concepts.
ScienceClassification of phenomena into discrete categories lies at theheart of many sciences. Example: taxonomy in biology
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Reification
DefinitionReification refers to making something real, bringing it intobeing, or making something concrete.
Automated processingReification is a prerequisite for automated processing
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Reification
DefinitionReification refers to making something real, bringing it intobeing, or making something concrete.
Automated processingReification is a prerequisite for automated processing
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Self-reference
Grelling-Nelson paradoxIs “non-self-descriptive” non-self-descriptive or self-descriptive?
ApplicationsSometimes, self-reference has surprising results: Godel’sTheorems, the Halting Problem
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Self-reference
Grelling-Nelson paradoxIs “non-self-descriptive” non-self-descriptive or self-descriptive?
ApplicationsSometimes, self-reference has surprising results: Godel’sTheorems, the Halting Problem
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
DiscretenessNamingAbstractionReificationSelf-reference
Self-reference
Grelling-Nelson paradoxIs “non-self-descriptive” non-self-descriptive or self-descriptive?
ApplicationsSometimes, self-reference has surprising results: Godel’sTheorems, the Halting Problem
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
1 Preliminaries
2 Hallmarks of a Formal Approach
3 Formal Systems in Information TechnologyFormal Systems: A Standard Response to ComplexityFormal Systems All Around Us
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 1: Books
ProblemHow to identify a book uniquely, and world-wide
Attempts“Library of Congress”, need of fast access to records led toalternatives (publishers J Whitaker & Sons, R R Bowker)
SolutionISBN: 13-digit International Standard Book Number (ISOstandard), see example
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 1: Books
ProblemHow to identify a book uniquely, and world-wide
Attempts“Library of Congress”, need of fast access to records led toalternatives (publishers J Whitaker & Sons, R R Bowker)
SolutionISBN: 13-digit International Standard Book Number (ISOstandard), see example
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 1: Books
ProblemHow to identify a book uniquely, and world-wide
Attempts“Library of Congress”, need of fast access to records led toalternatives (publishers J Whitaker & Sons, R R Bowker)
SolutionISBN: 13-digit International Standard Book Number (ISOstandard), see example
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 2: Representing Text
ProblemHow to store and transmit text, given that dozens of scriptsexists, and hundreds of languages use them.
AttemptsASCII (95 characters), ISO 8859 (one “byte”)
SolutionUnicode standardizes more than 109,000 characters, covering93 scripts, developed by the Unicode Consortium
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 2: Representing Text
ProblemHow to store and transmit text, given that dozens of scriptsexists, and hundreds of languages use them.
AttemptsASCII (95 characters), ISO 8859 (one “byte”)
SolutionUnicode standardizes more than 109,000 characters, covering93 scripts, developed by the Unicode Consortium
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 2: Representing Text
ProblemHow to store and transmit text, given that dozens of scriptsexists, and hundreds of languages use them.
AttemptsASCII (95 characters), ISO 8859 (one “byte”)
SolutionUnicode standardizes more than 109,000 characters, covering93 scripts, developed by the Unicode Consortium
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 3: Text Processing
ProblemIn the 1960s, some projects required amounts of documentsthat exceeded the processing capabilities of traditionaladministrative procedures.
AttemptsGML by IBM: named after inventors Goldfarb, Mosher, Lorie
Solution: SGML“SGML was...designed to enable the sharing ofmachine-readable large-project documents in government, law,and industry. Many such documents must remain readable forseveral decades—a long time in the information technologyfield.”
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 3: Text Processing
ProblemIn the 1960s, some projects required amounts of documentsthat exceeded the processing capabilities of traditionaladministrative procedures.
AttemptsGML by IBM: named after inventors Goldfarb, Mosher, Lorie
Solution: SGML“SGML was...designed to enable the sharing ofmachine-readable large-project documents in government, law,and industry. Many such documents must remain readable forseveral decades—a long time in the information technologyfield.”
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 3: Text Processing
ProblemIn the 1960s, some projects required amounts of documentsthat exceeded the processing capabilities of traditionaladministrative procedures.
AttemptsGML by IBM: named after inventors Goldfarb, Mosher, Lorie
Solution: SGML“SGML was...designed to enable the sharing ofmachine-readable large-project documents in government, law,and industry. Many such documents must remain readable forseveral decades—a long time in the information technologyfield.”
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 4: Hypertext
ProblemIn the late 1980s, it became clear that the Internet could beused to link documents together. For that, software needed torun on the client (browsers), and (web) servers.
Problem: How to make sure client software understands whatthe server is serving?
SolutionHTML, and application of SGML
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 4: Hypertext
ProblemIn the late 1980s, it became clear that the Internet could beused to link documents together. For that, software needed torun on the client (browsers), and (web) servers.Problem: How to make sure client software understands whatthe server is serving?
SolutionHTML, and application of SGML
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Example 4: Hypertext
ProblemIn the late 1980s, it became clear that the Internet could beused to link documents together. For that, software needed torun on the client (browsers), and (web) servers.Problem: How to make sure client software understands whatthe server is serving?
SolutionHTML, and application of SGML
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Surprised?
Why do we not realize...
... that we are surrounded by formal systems?
Because they work!We do not need to know that what underlies complex systemsis a formal process. The formal systems allow them to work asexpected, always!
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Surprised?
Why do we not realize...... that we are surrounded by formal systems?
Because they work!We do not need to know that what underlies complex systemsis a formal process. The formal systems allow them to work asexpected, always!
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Surprised?
Why do we not realize...... that we are surrounded by formal systems?
Because they work!
We do not need to know that what underlies complex systemsis a formal process. The formal systems allow them to work asexpected, always!
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
Surprised?
Why do we not realize...... that we are surrounded by formal systems?
Because they work!We do not need to know that what underlies complex systemsis a formal process. The formal systems allow them to work asexpected, always!
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
The Importance of Being Formal
First AgendaFind out in detail how formal systems work
GoalThorough understanding of formal logic as an example parexcellence for formal methods
ApproachStudy a series of logics: traditional, propositional, predicatelogic
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
The Importance of Being Formal
First AgendaFind out in detail how formal systems work
GoalThorough understanding of formal logic as an example parexcellence for formal methods
ApproachStudy a series of logics: traditional, propositional, predicatelogic
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
The Importance of Being Formal
First AgendaFind out in detail how formal systems work
GoalThorough understanding of formal logic as an example parexcellence for formal methods
ApproachStudy a series of logics: traditional, propositional, predicatelogic
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
The Importance of Being Formal
Second AgendaExplore fundamental boundaries of formal reasoning
GoalAppreciate Undecidability and Godel’s incompleteness results
ApproachStudy predicate logic deep enough to understand his formalarguments
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
The Importance of Being Formal
Second AgendaExplore fundamental boundaries of formal reasoning
GoalAppreciate Undecidability and Godel’s incompleteness results
ApproachStudy predicate logic deep enough to understand his formalarguments
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
The Importance of Being Formal
Second AgendaExplore fundamental boundaries of formal reasoning
GoalAppreciate Undecidability and Godel’s incompleteness results
ApproachStudy predicate logic deep enough to understand his formalarguments
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
The Importance of Being Formal
Third AgendaExplore formal methods across fields
ApproachStudents write essays and present their findings
GoalOverview of formal methods and their limitations in ourcivilization
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
The Importance of Being Formal
Third AgendaExplore formal methods across fields
ApproachStudents write essays and present their findings
GoalOverview of formal methods and their limitations in ourcivilization
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods
PreliminariesHallmarks of a Formal Approach
Formal Systems in Information Technology
Formal Systems: A Standard Response to ComplexityFormal Systems All Around Us
The Importance of Being Formal
Third AgendaExplore formal methods across fields
ApproachStudents write essays and present their findings
GoalOverview of formal methods and their limitations in ourcivilization
UIT2206: The Importance of Being Formal 1—Initial Ideas on Formal Methods