Fundamenta Informaticae XXI (2001) 1001–1035 1001 IOS Press Big-step Operational Semantics Revisited Jaroslaw Dominik Mateusz Ku´ smierek Institute of Informatics Warsaw University, Poland jdk@google.com Viviana Bono Department of Computer Science Torino University, Italy bono@di.unito.it Abstract. In this paper we present a novel approach to big-step operational semantics. This ap- proach stems from the observation that the typical type soundness property formulated via a big-step operational semantics is weak, while the option of using a small-step operational semantics is not always an option, because it is less intuitive to build and understand. We support our claim by using a simple language called LM, for which we present a big-step semantics expressed with the new approach, allowing one to formulate a stronger type soundness property. We prove this property for LM and we present an example of an error in the typing rules which does not violate the typical type soundness property, but does violate ours. 1. Introduction The big-step operational semantics formulation (as introduced by Kahn [8] and also known as natu- ral semantics) is often thought as a more intuitive choice than small-step semantics [10, 7, 2, 6, 1]. The superiority of such a formulation is especially visible for imperative languages with recursion and nested scopes. Moreover, a small-step semantics formulation of a language (as introduced by Plotkin [12]) in many cases requires one to define: (i) another language used internally in the reduc- tion process; (ii) additional rules to enforce a specific order of the evaluation. Examples of small-step semantics can be found in [4, 5, 3]. Big-step semantics is used to define naturally the semantics of programs in terms of judgements that describe that a program, in a given context, yields a final value/state/..., (see, for example, [3]). This is often convenient, typically leading to a clear semantics, easy to understand and follow. How- ever, an unfortunate consequence is that it is only possible to capture directly properties that can be