Advanced polymorphic type systems have come to play an important role in the world of functional programming. But, so far, these type systems have had little impact upon widely used imperative programming languages li...
详细信息
Advanced polymorphic type systems have come to play an important role in the world of functional programming. But, so far, these type systems have had little impact upon widely used imperative programming languages like C and C++. We show that ML-style polymorphism can be integrated smoothly into a dialect of C, which we call Polymorphic C. It has the same pointer operations as C, including the address-of operator &, the dereferencing operator *, and pointer arithmetic. We give a natural semantics for Polymorphic C, and prove a type soundness theorem that gives a rigorous and useful characterization of what can go wrong when a well-typed Polymorphic C program is executed. For example, a well-typed Polymorphic C program may fail to terminate, or it may abort due to a dangling pointer error. Proving such a type soundness theorem requires a notion of an attempted program execution;we show that a natural semantics gives rise quite naturally to a transition semantics, which we call a natural transition semantics, that models program execution in terms of transformations of partial derivation trees. This technique should be generally useful in proving type soundness theorems for languages defined using natural semantics. (C) 1998 Elsevier Science B.V. All rights reserved.
The transition semantics presented in Rumberg (J Log Lang Inf 25(1): 77-108, 2016a) constitutes a fine-grained framework for modeling the interrelation of modality and time in branching time structures. In that framew...
详细信息
The transition semantics presented in Rumberg (J Log Lang Inf 25(1): 77-108, 2016a) constitutes a fine-grained framework for modeling the interrelation of modality and time in branching time structures. In that framework, sentences of the transition language L-t are evaluated on transition structures at pairs consisting of a moment and a set of transitions. In this paper, we provide a class of first-order definable Kripke structures that preserves L-t-validity w. r. t. transition structures. As a consequence, for a certain fragment of L-t, validity w. r. t. transition structures turns out to be axiomatizable. The result is then extended to the entire language L-t by means of a quite natural 'Henkin move', i. e. by relaxing the notion of validity to bundled structures.
The paper presents an epistemic logic with quantification over agents of knowledge and with a syntactical distinction between de re and de dicto occurrences of terms. Knowledge de dicto is characterized as 'knowle...
详细信息
The paper presents an epistemic logic with quantification over agents of knowledge and with a syntactical distinction between de re and de dicto occurrences of terms. Knowledge de dicto is characterized as 'knowledge that', and knowlegde de re as 'knowledge of'. transition semantics turns out to be an adequate tool to account for the distinctions introduced.
Indicative conditionals with present tense antecedents can have 'shifted' readings that are unexpected given the semantic behavior of the tenses outside of conditionals. In this paper, we compare two accounts ...
详细信息
Indicative conditionals with present tense antecedents can have 'shifted' readings that are unexpected given the semantic behavior of the tenses outside of conditionals. In this paper, we compare two accounts of this phenomenon due to Kaufmann (J Semant 22(3):231-280, 2005) and Schulz (SALT XVIII, pp. 694-710, 2008), by reconstructing them in the framework of branching time. We then propose a novel account of indicative conditionals based on the branching time semantics suggested in Rumberg (J Logic Lang Inf 25(1):77-108, 2016), viz. transition semantics. We show that not only is the account of 'shifted' readings with present tense antecedents within this semantics very natural, but it also is empirically superior to its rivals in some respects.
暂无评论