90 likes | 168 Views
3 Questions. What do we need to do in order to achieve the vision? What is a fuller elaboration of the collection of artifacts required to support the vision? What has been done recently? What is ready to be addressed in the near future?. Constituents of the RESOLVE Effort.
E N D
3 Questions • What do we need to do in order to achieve the vision? What is a fuller elaboration of the collection of artifacts required to support the vision? • What has been done recently? • What is ready to be addressed in the near future?
Constituents of the RESOLVE Effort Language Definition • Math Units • Precis • Basis: Set Theory • Proofs • Basis: Math Logic • Specificational Units • Concepts • Enhancements • Profiles • Basis: Reals, Integers • Code Units • Realizations • Basis: Integer Facility, Arrays, Input/Output ⋯ • Facilities
Constituents of a Specificational Programming Language Coding Subsystem Facilities Language Diagram ● ( denotes ‘uses’ relation) ● Realizations ● ● Specificational Subsystem Facility Concepts Mathematical Subsystem ● ● Arr. Rlz. ● Lst. Rlz. ● Ptzr. Tpl. ● Arr. Rlz. ● Stk. Tpl. ● ● Que. Tpl. ● ● Int. Fac. ● Ttl. Odr. Th. Built-in Facilities ● ●Tree. Th. ● ● Str. Th. ● ● ● ● Int. Th. Proof Units Math Précis ● ● Set Th. Performance Profiles
Design Principles • Primary vs Secondary Operations • Simple Formal Specs • Metaphorical Nomenclature • Support for Efficiency • Broad Reusability • ∶
Software Support • Verifying Compiler • Type Checking • Code • Math • Code Generator • Proof Checker • Justification Checker • Run Time System (I/O, ⋯) • Editor (Math Notation) • Environment Manipulator?
Metatheory • Formal Language Syntax • Denotational Semantics • Compiler Specification • Soundness • Completeness
The Message • New Vision is Worthwhile • Current Paradigm is Hopelessly Broken • New Paradigm will work for Everything • The Challenge • No Incremental Change Path • Small Fragments Unconvincing • A Strategy • Target Visionaries First • Develop Critical Mass of Use Cases • Author Foundational Books • The Books • Rationale for Features of RESOLVE for Experts in Software Engineering and Programming Languages (Vol. I, II, ⋯) • Introduction to RESOLVE for CS 1 & 2 • Data Structures in RESOLVE • Programming Language Theory based on RESOLVE • Discrete Math in RESOLVE Communicating the New Verifiability Paradigm
Performance Profiles Presentation • Hand Verification of Examples • Updated Program Proof Rules • Precursor Function for Relational Correspondences • Simplified Communal Concept Specifications • Reducing Loops to Conditionals • Removing Manifestly Superfluous Hypotheses • Eliminate the Nested Remember Construct • NQV( RP, x ) [Next Question-mark Variable] • Why “n: 7” is incorrect [MAD] • Facility Declarations within Objects • Forms Allowed in Mathematical Proofs • New Parameter Mode • Nested List Explorer • Depository Metaphor for Partial Maps • Hashing Realization • Terminability Condition for Relational Op Specs Progress Since Last Workshop
RESOLVE Vision Statement • Exploration Tree Realization for Depository • Subtyping • Compiler Development • Chapters in RESOLVE Rationale Book • Additional Performance Profiles • CS Encyclopedia Articles on Specification & on Verification • Experiments with Isabelle • Caching Optimization and Scratchpad Memories Frontier Activities