Axiomatic Semantics I

Total Page:16

File Type:pdf, Size:1020Kb

Axiomatic Semantics I Spring 2016 Program Analysis and Verification Lecture 3: Axiomatic Semantics I Roman Manevich Ben-Gurion University Warm-up exercises 1. Define program state: 2. Define structural semantics configurations: 3. Define the form of structural semantics transitions: 2 Tentative syllabus Abstract Program Program Analysis Interpretation Verification Analysis Basics Techniques fundamentals Operational Control Flow Numerical Lattices semantics Graphs Domains Axiomatic Equation Fixed-Points Alias analysis Verification Systems Collecting Chaotic Interprocedural Semantics Iteration Analysis Galois Shape Using Soot Connections Analysis Domain CEGAR constructors Widening/ Narrowing 3 Agenda • Basic concepts of correctness • Axiomatic semantics (pages 175-183) – Motivation – First-order logic reminder – Hoare Logic 4 program correctness 5 Program correctness concepts • Specification = a certain relationship between initial state and final state Main focus of this course • Partial correctness = specifications that hold if the program terminates • Termination = program always terminates – i.e., for every input state partial correctness + termination = total correctness Other correctness concepts exist: liveness, resource usage, … 6 Verifying factorial with structural semantics 7 Structural semantics for While [asssos] x := a, 1 [x Aa] [skipsos] skip, 1 1 S1, 1 S1’, ’ [comp sos] S1; S2, 1 S1’; S2, 2 S1, 1 ’ [comp sos] S1; S2, 1 S2, ’ tt [if sos] if b then S1 else S2, 1 S1, if B b = tt ff [if sos] if b then S1 else S2, 1 S2, if B b = ff while b do S, 1 [whilesos] if b then S; while b do S) else skip, 8 Factorial example Sfac y:=1; while (x1) do (y:=y*x; x:=x–1) • Factorial partial correctness specification = if the statement terminates then the final value of y will be the factorial of the initial value of x – What if x < 0? • Formally, using structural semantics: Sfac, 1* ’ implies ’ y = ( x)! 9 Factorial proof strategy Sfac y:=1; while (x1) do (y:=y*x; x:=x–1) Lemma 1 Lemma 2 Lemma 3 • Lemma 1: if x>1 then y:=y*x; x:=x–1, 1* ’ implies y * ( x)! = ’ y * (’ x)! and ’ x1 • Lemma 2: if x1 then while (x=1) do (y:=y*x; x:=x–1), 1* ’ implies y * ( x)! = ’ y * (’ x)! and ’ x=1 • Lemma 3: if x1 then Sfac, 1* ’ implies ’ y = ( x)! 10 Factorial example: lemma 1 Sfac y:=1; while (x1) do (y:=y*x; x:=x–1) • Lemma 1: if x>1 then y:=y*x; x:=x–1, 1 * ’ implies y * ( x)! = ’ y * (’ x)! and ’ x1 • Proof: Assume x>1 y:=y*x; x:=x–1, 1 x:=x–1, [y y* x] 1 [y y* x, xx–1] = ’ • Now ’ y * (’ x)! = ( y* x) * ( x–1)! = y * ( x)! And since’ x = x-1 we have that ’ x1 • QED 11 Factorial example: lemma 2 Sfac y:=1; while (x1) do (y:=y*x; x:=x–1) • Lemma 2: if x1 then while (x1) do (y:=y*x; x:=x–1), 1* ’ implies y * ( x)! = ’ y * (’ x)! and ’ x=1 • Proof: W, 1 if (x1) then (y:=y*x; x:=x–1); W) else skip, – Case 1: x=1 – Case 2: x1 – meaning x>1 12 Factorial example: lemma 2, case 1 Sfac y:=1; while (x1) do (y:=y*x; x:=x–1) • Lemma 2: if x1 then while (x1) do (y:=y*x; x:=x–1), 1* ’ implies y * ( x)! = ’ y * (’ x)! and ’ x=1 • Proof: W, 1 if (x1) then (y:=y*x; x:=x–1); W) else skip, 1 skip, 1 • Claim holds 13 Factorial example: lemma 2, case 2 Sfac y:=1; while (x1) do (y:=y*x; x:=x–1) • Lemma 2: if x1 then while (x1) do (y:=y*x; x:=x–1), 1* ’ implies y * ( x)! = ’ y * (’ x)! and ’ x=1 • Proof: W, 1 if (x1) then (y:=y*x; x:=x–1); W) else skip, 1 (y:=y*x; x:=x–1); while, 1* while, ’’ 1* ’ • From lemma 1 we have that y * ( x)! = ’ y * (’’ x)! and ’’ x1 • Applying Lemma by induction (case 1 is the base case) gives us that ’’ y * (’’ x)! = ’ y * (’ x)! and ’ x=1 • Combining the two, we get ’ y * (’ x)! = ’’ y * (’’ x)! = y * ( x)! • and ’ x=1 • QED 14 Factorial example: lemma 3 Sfac y:=1; while (x1) do (y:=y*x; x:=x–1) • Lemma 3: if x1 then Sfac, 1* ’ implies ’ y = ( x)! • Proof: • Assume x1 • Now y:=1; W, 1 W, [y1] and [y1] x = x • Therefore, we can apply lemma 2 and obtain W, 1* ’ • [y1] y * ( [y1] x)! = ’ y * (’ x)! and ’ x=1 • Simplifying this yields: • 1 * ( x)! = ’ y * 1! and ’ x=1 • Meaning: ’ y = ( x)! • QED 15 How easy was that? • Proof is very laborious – Need to connect all transitions and argue about relationships between their states – Reason: too closely connected to semantics of programming language • Proof is long – Makes it hard to find possible mistakes • How did we know to find this proof? – Is there a methodology? 16 Can you I’ll use prove my operational program semantics correct? Better use axiomatic verification 17 One of the oldest surviving fragments of Euclid's Elements, a textbook used for millennia to teach proof-writing techniques. The diagram accompanies Book II, Proposition 5 "P. Oxy. I 29" by Euclid - http://www.math.ubc.ca/~cass/Euclid/papyrus/tha.jpg. Licensed under Public Domain via Wikimedia Commons - http://commons.wikimedia.org/wiki/File:P._Oxy._I_29.jpg#/media/File:P._Oxy._I_29.jpg 18 A systematic approach to program verification 19 Axiomatic verification approach • What do we need in order to prove that the program does what it supposed to do? • A language to express specifications • Compare the behavior with the one obtained by the operational semantics • Develop a proof system for showing that the program satisfies the specification • Mechanically use the proof system to show correctness 20 Axiomatic semantics contributors Robert Floyd C.A.R. Hoare Edsger W. Dijkstra 1967: use assertions 1969: use Floyd’s ideas Predicate transformer as foundation for static to define axiomatic semantics: weakest correctness proofs semantics precondition and “An axiomatic basis for strongest postcondition computer programming” 21 Assertions, a.k.a Hoare triples { P } C { Q } statement precondition a.k.a command postcondition • P and Q are state predicates expressed as logical formulas – Example: x>0 • If P holds in the initial state, and if execution of C terminates on that state, then Q will hold in the state in which C halts • C is not required to always terminate {true} while true do skip {false} 22 Total correctness assertions [ P ] C [ Q ] • If P holds in the initial state, execution of C must terminate on that state, and Q will hold in the state in which C halts 23 Specifying correctness of factorial 24 Factorial example: specify precondition/postcondition { ? } y := 1; while (x=1) do (y := y*x; x := x–1) { ? } 25 First attempt We need a way to “remember” value of x before execution { x>0 } y := 1; while (x=1) do (y := y*x; x := x–1) { y=x! } Holds only for value of x at state after execution finishes 26 Fixed assertion A logical variable, must not appear in statements – immutable. Also called a ghost variable. { x=n } y := 1; while (x=1) do (y := y*x; x := x–1) { y=n! n>0 } 27 The proof outline Background axiom { x>0 x=n } { n!=n*(n-1)! } y := 1; { x>0 y*x!=n! nx } while (x=1) do { x-1>0 (y*x)*(x-1)!=n! n(x-1) } y := y*x; { x-1>0 y*(x-1)!=n! n(x-1) } x := x–1 { y*x!=n! n>0 x=1 } 28 Factorial spec and proof in Dafny online function Factorial(n: int): int requires n >= 1 { if n == 1 then 1 else n * Factorial(n - 1) } method ComputeFactorial(n: int) returns (y: int) requires n >= 1 ensures y == Factorial(n) { var x := n; y := 1; while x != 1 invariant y * Factorial(x) == Factorial(n) decreases x { y := y * x; x := x - 1; } } 29 Formalizing partial correctness via hoare logic 30 States and predicates • – program states (State) – undefined P • A state predicate P is a (possibly infinite) set of states • P – P holds in state 31 Formalizing Hoare triples ’ if C, 1*’ Q Ssos C = else P C(P) C ’ • { P } C { Q } – , ’ . ( P C, 1* ’) ’ Q alternatively – Convention: P for all P . P SsosC Q 32 How do we express predicates? • Extensional approach – Abstract mathematical functions P : State {tt, ff} • Intensional approach – via language of formulae 33 An assertion language • Bexp is not expressive enough to express predicates needed for many proofs – Extend Bexp • Allow quantification – z. … – z. … • z. z = kn • Import well-known mathematical concepts – n! n (n-1) 2 1 34 An assertion language Either a program variables or a logical variable a ::= n | x | a1 + a2 | a1 a2 | a1 – a2 A ::= true | false | a1 = a2 | a1 a2 | A | A1 A2 | A1 A2 | A1 A2 | z. A | z. A 35 Some FO logic definitions before we get to the rules 36 Free/bound variables • A variable is said to be bound in a formula when it occurs in the scope of a quantifier Otherwise it is said to be free – i. k=im – (i+10077)i. j+1=i+3) • FV(A) the free variables of A • Defined inductively on the abstract syntax tree of A 37 Computing free variables FV(n) {} FV(x) {x} FV(a1+a2) FV(a1a2) FV(a1-a2) FV(a1) FV(a2) FV(true) FV(false) {} FV(a1=a2) FV(a1a2) FV(a1) FV(a2) FV(A) FV(A) FV(A1 A2) FV(A1 A2) FV(A1 A2) FV(a1) FV(a2) FV(z.
Recommended publications
  • Operational Semantics Page 1
    Operational Semantics Page 1 Operational Semantics Class notes for a lecture given by Mooly Sagiv Tel Aviv University 24/5/2007 By Roy Ganor and Uri Juhasz Reference Semantics with Applications, H. Nielson and F. Nielson, Chapter 2. http://www.daimi.au.dk/~bra8130/Wiley_book/wiley.html Introduction Semantics is the study of meaning of languages. Formal semantics for programming languages is the study of formalization of the practice of computer programming. A computer language consists of a (formal) syntax – describing the actual structure of programs and the semantics – which describes the meaning of programs. Many tools exist for programming languages (compilers, interpreters, verification tools, … ), the basis on which these tools can cooperate is the formal semantics of the language. Formal Semantics When designing a programming language, formal semantics gives an (hopefully) unambiguous definition of what a program written in the language should do. This definition has several uses: • People learning the language can understand the subtleties of its use • The model over which the semantics is defined (the semantic domain) can indicate what the requirements are for implementing the language (as a compiler/interpreter/…) • Global properties of any program written in the language, and any state occurring in such a program, can be understood from the formal semantics • Implementers of tools for the language (parsers, compilers, interpreters, debuggers etc) have a formal reference for their tool and a formal definition of its correctness/completeness
    [Show full text]
  • Extensible Transition System Semantics
    Extensible Transition System Semantics Casper Bach Poulsen Submitted to Swansea University in fulfilment of the requirements for the Degree of Doctor of Philosophy Department of Computer Science Swansea University 2015 Declaration This work has not been previously accepted in substance for any degree and is not being concurrently submitted in candidature for any degree. Signed ............................................................ (candidate) Date ............................................................ Statement 1 This thesis is the result of my own investigations, except where otherwise stated. Other sources are acknowledged by footnotes giving explicit references. A bibliography is appended. Signed ............................................................ (candidate) Date ............................................................ Statement 2 I hereby give my consent for my thesis, if accepted, to be available for photocopying and for inter-library loan, and for the title and summary to be made available to outside organisations. Signed ............................................................ (candidate) Date ............................................................ Abstract Structural operational semantics (SOS) come in two main styles: big-step and small- step. Each style has its merits and drawbacks, and it is sometimes useful to maintain specifications in both styles. But it is both tedious and error-prone to maintain multiple specifications of the same language. Additionally, big-step SOS has poor support for
    [Show full text]
  • A. Detailed Course Structure of MA (Linguistics)
    A. Detailed Course Structure of M.A. (Linguistics) Semester I Course Course Title Status Module & Marks Credits Code LIN 101 Introduction to Core 20(M1)+20(M2)+10(IA) 4 Linguistics LIN 102 Levels of Language Core 20(M1)+20(M2)+10(IA) 4 Study LIN 103 Phonetics Core 20(M1)+20(M2)+10(IA) 4 LIN 104 Basic Morphology & Core 20(M1)+20(M2)+10(IA) 4 Basic Syntax LIN 105 Indo-European Core 20(M1)+20(M2)+10(IA) 4 Linguistics & Schools of Linguistics Semester II LIN 201 Phonology Core 20(M1)+20(M2)+10(IA) 4 LIN 202 Introduction to Core 20(M1)+20(M2)+10(IA) 4 Semantics & Pragmatics LIN 203 Historical Linguistics Core 20(M1)+20(M2)+10(IA) 4 LIN 204 Indo-Aryan Core 20(M1)+20(M2)+10(IA) 4 Linguistics LIN 205 Lexicography Core 20(M1)+20(M2)+10(IA) 4 Semester III LIN 301 Sociolinguistics Core 20(M1)+20(M2)+10(IA) 4 LIN 302 Psycholinguistics Core 20(M1)+20(M2)+10(IA) 4 LIN 303 Old Indo-Aryan Discipline 20(M1)+20(M2)+10(IA) 4 Specific Elective Lin 304 Middle Indo-Aryan Discipline 20(M1)+20(M2)+10(IA) 4 Specific Elective LIN 305 Bengali Linguistics Discipline 20(M1)+20(M2)+10(IA) 4 1 Specific Elective LIN 306 Stylistics Discipline 20(M1)+20(M2)+10(IA) 4 Specific Elective LIN 307 Discourse Analysis Generic 20(M1)+20(M2)+10(IA) 4 Elective Semester IV LIN 401 Advanced Core 20(M1)+20(M2)+10(IA) 4 Morphology & Advanced Syntax LIN 402 Field Methods Core 20(M1)+20(M2)+10(IA) 4 LIN 403 New Indo-Aryan Discipline 20(M1)+20(M2)+10(IA) 4 Specific Elective LIN 404 Language & the Discipline 20(M1)+20(M2)+10(IA) 4 Nation Specific Elective LIN 405 Language Teaching Discipline 20(M1)+20(M2)+10(IA) 4 Specific Elective LIN 406 Term Paper Discipline 50 6 Specific Elective LIN 407 Language Generic 20(M1)+20(M2)+10(IA) 4 Classification & Elective Typology B.
    [Show full text]
  • Lexical and Semantics Literatures and Their Trends Mohana Dass Ramasamy & Devi Vadiveloo Department of Indian Studies University of Malaya
    Lexical and Semantics Literatures and Their Trends Mohana Dass Ramasamy & Devi Vadiveloo Department of Indian Studies University of Malaya Introduction with his imagination give birth to new word formation whenever there is a need and necessity. The process of making or coining the new term, sometime easy and sometime not. By adding an affix or suffix to a root word, an intended word could be formed to fill the blank of missing message delivery. The only criteria of succession is it has to be the best term that could represent the abstract mental message or image borne in the mind. as a special innate mental module. The field of study known as lexical and lexical semantic have been established well in the literature, but they were less studied in the Tamil background. This study, therefore, aimed at giving an impressive look at the existing literatures on these fields, and possibly arguing for how they could be matched in the Tamil. Word Formation Literatures Word has different connection with various academic fields in this world. However, strong inter- connection between word and linguistic have created an academic discipline alone, known as today. Lexical has different perspective from each discipline in academic world [Palmer (1981), Trask (1993), Crystal (1997)]. Morphology is study of lexical structure and semantics is the study of lexical meaning. Lexical participation in every field played a vital role to create great success in academic today. Lexical Semantics also garnered extensive interest of the scholarly world. Since lexical semantics defined as study of word meaning, Lexical semanticists are interested in what words mean, why they mean so, what they mean, how they are and discourse(CaritaParadis 2013: 1).
    [Show full text]
  • Axiomatic Semantics II
    Spring 2016 Program Analysis and Verification Lecture 5: Axiomatic Semantics II Roman Manevich Ben-Gurion University Tentative syllabus Abstract Program Program Analysis Interpretation Verification Analysis Basics Techniques fundamentals Operational Control Flow Numerical Lattices semantics Graphs Domains Equation Hoare Logic Fixed-Points Alias analysis Systems Applying Hoare Collecting Chaotic Interprocedural Logic Semantics Iteration Analysis Weakest Galois Shape Precondition Using Soot Connections Analysis Calculus Proving Domain CEGAR Termination constructors Widening/ Data structures Narrowing 2 Previously • Basic notions of correctness • Formalizing Hoare triples • FO logic – Free variables – Substitutions • Hoare logic rules 3 Warm-up exercises 1. Define program state: 2. Define state predicate: 3. Define P 4. Formalize {P} C {Q} via structural semantics: 5. FV(m. x=k+1 0mx-1 nums(m)res) = { } 6. (m. x=k+1 0mx-1 nums(m)res)[x+1/x] = 4 Agenda • Inference system • Annotating programs with proofs • Properties of the semantics Chapter 6 • Predicate transformer calculus – Weakest precondition calculus – Strongest postcondition calculus 5 Axiomatic semantics as an inference system 6 Inference trees • Trees describing rule applications that ultimately prove a program correct • Leaves are axiom applications • Internal nodes correspond to rule applications over triples inferred from sub-trees • Inference tree is called – Simple if tree is only an axiom – Composite otherwise 7 Factorial proof inference tree Goal: { x=n } y:=1; while
    [Show full text]
  • Ogden and Richards' the Meaning of Meaning and Early Analytic
    Ogden and Richards’ The Meaning of Meaning and early analytic philosophy. James McElvenny [email protected] This is the green open access copy of my paper in Language Sciences (2014, 41.212-221). http://dx.doi.org/10.1016/j.langsci.2013.10.001 This version silently corrects a few small errors in the published paper. Abstract C.K. Ogden (1889–1957) and I.A. Richards’ (1893–1979) The Meaning of Meaning is widely recognised as a classic text of early twentieth-century linguistic semantics and semiotics, but less well known are its links to the ‘logical atomism’ of Bertrand Russell (1872–1970), one of the foundational doctrines of analytic philosophy. In this paper a detailed comparison of The Meaning of Meaning and logical atomism is made, in which several key similarities between the two theories in subject matter and approach are identified: both attempt to describe meaning in terms of the latest psychological doctrines and both pursue a normative program aimed at rectifying the perceived deficiencies of language. But there are also a number of differences between the theories. Ogden and Richards – most probably inspired by Victoria Lady Welby (1837–1912) – offered a pragmatically oriented account of ordinary language, while Russell sought a ‘logically perfect language’ beyond interpretation, and rejected the work of Welby and her allies. These differences contributed significantly to Russell’s largely negative opinion of The Meaning of Meaning. Despite this, several ideas pioneered in The Meaning of Meaning re-appear in Russell’s later writings. The Meaning of Meaning, it would seem, not only drew inspiration from Russell’s philosophy but may have also contributed to its further development.
    [Show full text]
  • Observations Regarding the Lexical Content at the Beginnings of Structural Semantics
    article doi:10.17684/i9A135en DIACRONIA ISSN: 2393-1140 Impavidi progrediamur! www.diacronia.ro Observations regarding the lexical content at the beginnings of structural semantics Dinu Moscal˚ “A. Philippide” Institute of Romanian Philology, Str. Th. Codrescu 2, 700481 Iași, Romania Article info Abstract History: This study focuses on the difficulties noted by a series of German lexicologists Received April 11, 2019 at the beginnings of structural semantics as part of their attempt to identify a Accepted April 16, 2019 possible method of organizing the lexis of a language. Their studies, beginning Published May 7, 2019 with Jost Trier, focused on the analysis of certain lexical groups called Wortfelder (“lexical fields”), regarded as parts of a completely organized lexis. Their ideal- Key words: istic perception—according to which the whole lexis of a language has an inner semantics organization that needs to be discovered—was confronted with some major structuralism issues. Our first observation, based on some examples from the lexis, reveals lexicology the fact that certain words cannot be classified as belonging to a specific lexical lexical field field. Another observation is related to the semantic continuum of the lexical diachrony field, which is compared in some works with the image of a mosaic. These issues are detailed by the argumentations of the German lexicologists, whose research was based on a diachronic analysis of the lexis. Their views were exploited in the second stage of the theorization of lexical fields. 1. Introduction Any human cognitive activity implies first and foremost the identification of the object (that can bemore or less accurate) followed by the identification of the parts that the respective object is made of.
    [Show full text]
  • Semantics the Outline
    semantics The outline • Quotation • Introduction • Basic definition • Why is it important to study semantics? • Major concerns of semantics • Approaches to the study of semantics • Branches of semantics • Semantic ambiguity • Semantic rules • References Quotation • “Semantics is about the relation of words to reality - the way that speakers commit themselves to a shared understanding of the truth, and the way their thoughts are anchored to things and situations in the world.” Steven Pinker Definition Semantics is the study of the meaning of language. It has to do with considering the meanings of words. Scholars (Boas and his most notable pupil Sapir) have frequently added to their grammatical analyses of languages some discussion of the meaning of the grammatical categories and of the correlations between the structure of the vocabularies and the cultures in which the languages operated. Why is it important to study semantics • Semantics is studied for a number of different reasons: – It is central to the study of communication – The meaning is more complex than simply the words formed in a sentence. Major concerns of semantics • Study of meaning is one of the major areas of linguistic study. Linguists have approached it in a variety of ways. Semantics is associated with different issues related to meaning including naming, concept, sense and reference Naming • Naming as a semantic process derives from the understanding that words are names or labels for things. The major problem with this naming view of semantics is that it is only nouns and nominal expressions that can be analysed semantically. In addition, abstract nuns like love, hatred, truth will be difficult to explain since they are not living things Concepts • Concepts mediate between the mind constructs and objects in the real world.
    [Show full text]
  • Information-Structural Semantics for English Intonation*
    MARK STEEDMAN INFORMATION-STRUCTURAL SEMANTICS FOR ENGLISH INTONATION* 1. INTRODUCTION Selkirk (1984), Hirschberg and Pierrehumbert (1986), Pierrehumbert and Hirschberg (1990), andthe present author, have offered different but related accounts of intonation structure in English and some other languages. These accounts share the assumption that the system of tones identified by Pierrehumbert (1980), as modified by Pierrehumbert and Beckman (1988) and Silverman et al. (1992), has as transparent and type-driven a semantics in these languages as do their words and phrases. While the semantics of intonation in English concerns information structure and propositional attitude, rather than the predicate-argument relations and operator- scope relations that are familiar from standard semantics in the spirit of the papers collected as Montague 1974,this information-structural semantics is fully compositional, and can be regarded as a component of the same semantic system. The present paper builds on Steedman (1991) and Steedman (2000a) to develop a new semantics for intonation structure, which shares with the earlier versions the property of being fully integrated into Combinatory Categorial Grammar (CCG, see Steedman 2000b, hereafter SP). This grammar integrates intonation structure into surface derivational structure and the associated Montague-style compositional semantics, even when the intonation structure departs from the restrictions of traditional surface structure. Many of the diverse discourse meanings that have been attributed to intonational
    [Show full text]
  • ENG 831 LEXICOLOGY and SEMANTICS of ENGLISH Course
    COURSE GUIDE ENG 831 LEXICOLOGY AND SEMANTICS OF ENGLISH Course Developer/Writer Dr Oye Taiwo Department of Linguistics & African Languages University of Ibadan Ibadan Editor Dr. Olurotimi Taiwo NATIONAL OPEN UNIVERSITY OF NIGERIA 1 National Open University of Nigeria Headquarters 14/16 Ahmadu Bello Way Victoria Island Lagos Abuja Annex 245 Samuel Adesujo Ademulegun Street Central Business District Opposite Arewa Suites Abuja e-mail: [email protected] URL: www.nou.edu.ng National Open University of Nigeria First Printed ISBN: All Rights Reserved Printed by …………….. For National Open University of Nigeria 2 CONTENTS PAGE Introduction 3 Course Aim 3 Course Objectives 3 Working through this Course 3 Course Materials 4 Study Units 4 References and Further Reading 6 Assessment 6 Tutor Marked Assignments (TMA) 6 Final Examination and Grading 6 Course Marking Scheme 6 Course Overview and Presentation Schedule 7 What You Will Need for this Course 7 How to Get the Most from the Course 8 Facilitators/Tutors and Tutorials 8 Conclusion 8 Summary 8 3 Introduction This is a three credit unit course presented in five modules. The general aim of the first module is to provide you with an in-depth understanding of how the meaning of a sentence‘s component words and their arrangement in syntactic structure determine sentence meaning. In module two, you will learn more closely about connectives and logical quantifiers. I shall also explain the truth relations in entailment and presupposition. Modules three and four discuss other necessary information needed to determine sentence meaning apart from the syntactic structure. Some of these are the speaker‘s and addressee‘s background attitudes and beliefs, their understanding of the context in which a sentence is uttered, and their knowledge of how language can be used to inform, to persuade, to mislead, and so forth.
    [Show full text]
  • Semantic Structure, Relational Networks, and Domains of Reference1
    JOURNAL OF ENGLISH STUDIES, I (1999), 271-288 SEMANTIC STRUCTURE, RELATIONAL NETWORKS, AND DOMAINS OF REFERENCE1 FRANCISCO SANTIBÁÑEZ SÁENZ University of La Rioja ABSTRACT. In this paper we make use of some of the conceptual tools provided by Cognitive Linguistics in order to discuss the issue of knowledge organization. We start off from the account provided by Ruiz de Mendoza (1996), who fleshes out the key ideas of the network organization model postulated by Langacker (1987). In Ruiz de Mendoza’s account a semantic characterization consists of what he terms a general definer, which is a kind of semantic invariant, plus a number of prototypical instantiations of the definer. The instantiations are accessed relationally. Our own account tries to improve on Ruiz de Mendoza’s initial insights by making his proposal compatible with Langacker’s notions of base and profile, and by organizing the resulting description in the form of sets of converging cognitive models, a proposal made by Lakoff (1987) which is fully compatible with the network characterization. To illustrate our view we offer an analysis of the concept of ‘mother’, which has been variously studied by a number of linguists working within the cognitive paradigm. Our analysis is mainly based on Lakoff’s account, but we further structure each converging model in terms of the domains on which it is potentially profiled. This has the advantage of providing a much richer characterization which facilitates the instantiation process. 1. INTRODUCTION The need for an encyclopedic conception of semantics (Haiman 1980) is one of the main points of emphasis of the research programme in cognitive linguistics (see Langacker 1987, 1990; Lakoff 1987, 1989).
    [Show full text]
  • Operational Semantics Using the Partiality Monad
    Operational Semantics Using the Partiality Monad Nils Anders Danielsson Chalmers University of Technology and University of Gothenburg [email protected] Abstract ρ.x/ v ρ c c D ρ λx:t λx:tρ The operational semantics of a partial, functional language is often ` + ρ x v ` + given as a relation rather than as a function. The latter approach ` + is arguably more natural: if the language is functional, why not ρ t λx:t ρ ρ t v ρ ; x v t v take advantage of this when defining the semantics? One can im- ` 1 + 0 0 ` 2 + 0 0 D 0 ` 0 + mediately see that a functional semantics is deterministic and, in a ρ t t v ` 1 2 + constructive setting, computable. This paper shows how one can use the coinductive partiality Figure 1. A call-by-value operational semantics for the untyped λ- monad to define big-step or small-step operational semantics for calculus with constants, specifying which terms can terminate with lambda-calculi and virtual machines as total, computable functions what values (very close to a semantics given by Leroy and Grall (total definitional interpreters). To demonstrate that the resulting se- (2009)). mantics are useful type soundness and compiler correctness results are also proved. The results have been implemented and checked using Agda, a dependently typed programming language and proof assistant. ρ t ρ t v ρ t ` 1 * ` 1 + ` 2 * ρ t t ρ t t Categories and Subject Descriptors F.3.2 [Logics and Mean- ` 1 2 * ` 1 2 * ings of Programs]: Semantics of Programming Languages—Oper- ρ t λx:t ρ ρ t v ρ ; x v t ational semantics; D.1.1 [Programming Techniques]: Applicative ` 1 + 0 0 ` 2 + 0 0 D 0 ` 0 * (Functional) Programming; E.1 [Data Structures]; F.3.1 [Logics ρ t1 t2 and Meanings of Programs]: Specifying and Verifying and Reason- ` * ing about Programs—Mechanical verification ρ t def .
    [Show full text]