Skip to main content

Showing 1–6 of 6 results for author: Bereczky, P

.
  1. arXiv:2311.10482  [pdf, ps, other

    cs.PL

    A Formalisation of Core Erlang, a Concurrent Actor Language

    Authors: Péter Bereczky, Dániel Horpácsi, Simon Thompson

    Abstract: In order to reason about the behaviour of programs described in a programming language, a mathematically rigorous definition of that language is needed. In this paper, we present a machine-checked formalisation of concurrent Core Erlang (a subset of Erlang) based on our previous formalisations of its sequential sublanguage. We define a modular, frame stack semantics, show how program evaluation is… ▽ More

    Submitted 17 November, 2023; originally announced November 2023.

    Comments: Accepted for publication to Acta Cybernetica on 10th of May, 2023

  2. arXiv:2308.12403  [pdf, ps, other

    cs.PL

    A Frame Stack Semantics for Sequential Core Erlang

    Authors: Péter Bereczky, Dániel Horpácsi, Simon Thompson

    Abstract: We present a small-step, frame stack style, semantics for sequential Core Erlang, a dynamically typed, impure functional programming language. The semantics and the properties that we prove are machine-checked with the Coq proof assistant. We improve on previous work by including exceptions and exception handling, as well as built-in data types and functions. Based on the semantics, we define mult… ▽ More

    Submitted 23 August, 2023; originally announced August 2023.

    Comments: Draft paper of IFL 2023, The 35th Symposium on Implementation and Application of Functional Languages, August 29--31, 2023, Braga, Portugal

  3. arXiv:2208.14260  [pdf, ps, other

    cs.PL

    Program Equivalence in an Untyped, Call-by-value Lambda Calculus with Uncurried Recursive Functions

    Authors: Dániel Horpácsi, Péter Bereczky, Simon Thompson

    Abstract: We aim to reason about the correctness of behaviour-preserving transformations of Erlang programs. Behaviour preservation is characterised by semantic equivalence. Based upon our existing formal semantics for Core Erlang, we investigate potential definitions of suitable equivalence relations. In particular we adapt a number of existing approaches of expression equivalence to a simple functional pr… ▽ More

    Submitted 30 August, 2022; originally announced August 2022.

    Comments: Submitted to the Journal of Logical and Algebraic Methods in Programming

  4. Mechanizing Matching Logic In Coq

    Authors: Péter Bereczky, Xiaohong Chen, Dániel Horpácsi, Lucas Peña, Jan Tušil

    Abstract: Matching logic is a formalism for specifying, and reasoning about, mathematical structures, using patterns and pattern matching. Growing in popularity, it has been used to define many logical systems such as separation logic with recursive definitions and linear temporal logic. In addition, it serves as the logical foundation of the K semantic framework, which was used to build practical verifiers… ▽ More

    Submitted 21 September, 2022; v1 submitted 14 January, 2022; originally announced January 2022.

    Comments: In Proceedings FROM 2022, arXiv:2209.09208

    Journal ref: EPTCS 369, 2022, pp. 17-36

  5. arXiv:2011.10373  [pdf, other

    cs.PL

    A Comparison of Big-step Semantics Definition Styles

    Authors: Péter Bereczky, Dániel Horpácsi, Simon Thompson

    Abstract: Formal semantics provides rigorous, mathematically precise definitions of programming languages, with which we can argue about program behaviour and program equivalence by formal means; in particular, we can describe and verify our arguments with a proof assistant. There are various approaches to giving formal semantics to programming languages, at different abstraction levels and applying differe… ▽ More

    Submitted 20 November, 2020; originally announced November 2020.

  6. A Proof Assistant Based Formalisation of Core Erlang

    Authors: Péter Bereczky, Dániel Horpácsi, Simon Thompson

    Abstract: Our research is part of a wider project that aims to investigate and reason about the correctness of scheme-based source code transformations of Erlang programs. In order to formally reason about the definition of a programming language and the software built using it, we need a mathematically rigorous description of that language. In this paper, we present our proof-assistant-based formalisatio… ▽ More

    Submitted 18 August, 2020; v1 submitted 24 May, 2020; originally announced May 2020.

    Comments: 21st International Symposium on Trends in Functional Programming

    Journal ref: In: Byrski A., Hughes J. (eds) Trends in Functional Programming. TFP 2020. Lecture Notes in Computer Science, vol 12222. Springer, Cham