Larissa Meinicke

dblp:m/LarissaMeinicke · also Larissa A. Meinicke · DBLP profile ↗
← Back
26ranked-venue papers
6as first author
3since 2021 · last 2026
0000-0002-5272-820XORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 20 · 5 first-author · 2 since 2021Software engineering, systems software and programming languages · 11 · 2 first-author · 1 since 2021
YearPublicationVenuePosition
2026 Reasoning about expression evaluation under interference
abstract
Hoare-style inference rules for program constructs permit the copying of expressions and tests from program text into logical contexts. It is known that this requires care even for sequential programs but much more serious issues arise with concurrent programs because of potential interference to the values of variables. The “rely-guarantee” approach tackles the challenge of recording acceptable interference and offers a way to provide safe inference rules for concurrent constructs. This article shows how the algebraic presentation of rely-guarantee ideas can clarify and formalise the conditions for safely re-using expressions and tests from program text in logical contexts for reasoning about concurrent programs; crucially this extends to handling expressions that reference more than one shared variable. A non-trivial example related to the Fischer-Galler forest representation of equivalence relations is treated.
Ian J. Hayes, Cliff B. Jones, Larissa Meinicke
Formal Aspects Comput.3
2024 Restructuring a Concurrent Refinement Algebra
Ian J. Hayes, Larissa Meinicke, Nasos Evangelou-Oost
RAMiCS2
2023 Trace Models of Concurrent Valuation Algebras
Nasos Evangelou-Oost, Larissa Meinicke, Callum Bannister, Ian J. Hayes
ICFEM2
2019 Cylindric Kleene Lattices for Program Construction
Brijesh Dongol, Ian J. Hayes, Larissa Meinicke, Georg Struth
MPC3
2019 A synchronous program algebra: a basis for reasoning about shared-memory and event-based concurrency
abstract
Abstract In this paper we introduce an abstract algebra for reasoning about concurrent programs, that includes an abstract algebra of atomic steps, with sub-algebras of program and environment steps, and an abstract synchronisation operator. We show how the abstract synchronisation operator can be instantiated as a synchronous parallel operator with interpretations in rely-guarantee concurrency for shared-memory systems, and in process algebras CCS and CSP. It is also instantiated as a weak conjunction operator, an operator that is useful for the specification of rely and guarantee conditions in rely/guarantee concurrency. The main differences between the parallel and weak conjunction instantiations of the synchronisation operator are how they combine individual atomic steps. Lemmas common to these different instantiations are proved once using the axiomatisation of the abstract synchronous operator. Using the sub-algebras of program and environment atomic steps, rely and guarantee conditions, as well as Morgan-style specification commands, are defined at a high-level of abstraction in the program algebra. Lifting these concepts from rely/guarantee concurrency to a higher level of abstraction makes them more widely applicable. We demonstrate the practicality of the algebra by showing how a core law from rely-guarantee theory, the parallel introduction law, can be abstracted and verified easily in the algebra. In addition to proving fundamental properties for reasoning about concurrent shared-variable programs, the algebra is instantiated to prove abstract process synchronisation properties familiar from the process algebras CCS and CSP. The algebra has been encoded in Isabelle/HOL to provide a basis for tool support for concurrent program verification based on the rely/guarantee technique. It facilitates simpler, more general, proofs that allow a higher level of automation than what is possible in low-level, model-specific interpretations.
Ian J. Hayes, Larissa Meinicke, Kirsten Winter, Robert Colvin
Formal Aspects Comput.2
2018 Encoding Fairness in a Synchronous Concurrent Program Algebra
Ian J. Hayes, Larissa Meinicke
FM2
2018 Type Capabilities for Object-Oriented Programming Languages
Xi Wu 0005, Yi Lu 0003, Patrick A. Meiring, Ian J. Hayes, Larissa Meinicke
ICFEM5
2017 Capabilities for Java: Secure Access to Resources
Ian J. Hayes, Xi Wu 0005, Larissa Meinicke
APLAS3
2017 Designing a semantic model for a wide-spectrum language with concurrency
abstract
Abstract A wide-spectrum language integrates specification constructs into a programming language in a manner that treats a specification command just like any other command. The primary contribution of this paper is a semantic model for a wide-spectrum language that supports concurrency and a refinement calculus. A distinguishing feature of the language is that steps of the environment are modelled explicitly, alongside steps of the program. From these two types of steps a rich set of specification commands can be constructed, based on operators for nondeterministic choice, and sequential and parallel composition. We also introduce a novel operator, weak conjunction , which is used extensively to conjoin separate aspects of specifications, allowing us to take a separation-of-concerns approach to subsequent reasoning. We provide a denotational semantics for the language based on traces, which may be terminating, aborting, infeasible, or infinite. To demonstrate the generality and unifying strength of the language, we use it to express a range of concepts from the concurrency literature, including: a refinement theory for rely/guarantee reasoning; an abstract specification of local variables in a concurrent context; specification of an abstract, linearisable data structure; a partial encoding of temporal logic; and defining the relationships between notions of nonblocking programs. The novelty of the paper is that these diverse concepts build on the same theory. In particular, the rely concept from Jones’ rely/guarantee framework, and a stronger demand concept that restricts the environment, are reused across the different domains to express assumptions about the environment. The language and model form an instance of an abstract concurrent program algebra, and this facilitates reasoning about properties of the model at a high level of abstraction.
Robert Colvin, Ian J. Hayes, Larissa Meinicke
Formal Aspects Comput.3
2016 An Algebra of Synchronous Atomic Steps
Ian J. Hayes, Robert Colvin, Larissa Meinicke, Kirsten Winter, Andrius Velykis
FM3
2015 Hidden-Markov program algebra with iteration
abstract
We use hidden Markov models to motivate a quantitative compositional semantics for noninterference-based security with iteration, including a refinement- or ‘implements’ relation that compares two programs with respect to their information leakage; and we propose a program algebra for source-level reasoning about such programs, in particular as a means of establishing that an ‘implementation’ program leaks no more than its ‘specification’ program. This joins two themes: we extend our earlier work, having iteration but only qualitative (Morgan 2009), by making it quantitative; and we extend our earlier quantitative work (McIver et al. 2010) by including iteration. We advocate stepwise refinement and source-level program algebra – both as conceptual reasoning tools and as targets for automated assistance. A selection of algebraic laws is given to support this view in the case of quantitative noninterference; and it is demonstrated on a simple iterated password-guessing attack.
Annabelle McIver, Larissa Meinicke, Carroll Morgan
Math. Struct. Comput. Sci.2
2014 Invariants, Well-Founded Statements and Real-Time Program Algebra
Ian J. Hayes, Larissa Meinicke
FM2
2014 Abstractions of non-interference security: probabilistic versus possibilistic
abstract
Abstract The Shadow Semantics (Morgan, Math Prog Construction, vol 4014, pp 359–378, 2006 ; Morgan, Sci Comput Program 74(8):629–653, 2009 ) is a possibilistic (qualitative) model for noninterference security. Subsequent work (McIver et al., Proceedings of the 37th international colloquium conference on Automata, languages and programming: Part II, 2010 ) presents a similar but more general quantitative model that treats probabilistic information flow. Whilst the latter provides a framework to reason about quantitative security risks, that extra detail entails a significant overhead in the verification effort needed to achieve it. Our first contribution in this paper is to study the relationship between those two models (qualitative and quantitative) in order to understand when qualitative Shadow proofs can be “promoted” to quantitative versions, i.e. in a probabilistic context. In particular we identify a subset of the Shadow’s refinement theorems that, when interpreted in the quantitative model, still remain valid even in a context where a passive adversary may perform probabilistic analysis. To illustrate our technique we show how a semantic analysis together with a syntactic restriction on the protocol description, can be used so that purely qualitative reasoning can nevertheless verify probabilistic refinements for an important class of security protocols. We demonstrate the semantic analysis by implementing the Shadow semantics in Rodin, using its special-purpose refinement provers to generate (and discharge) the required proof obligations (Abrial et al., STTT 12(6):447–466, 2010 ). We apply the technique to some small examples based on secure multi-party computations.
Thai Son Hoang, Annabelle McIver, Larissa Meinicke, Carroll Morgan, Anthony M. Sloane, E. Susatyo
Formal Aspects Comput.3
2013 Linking Unifying Theories of Program refinement
Ian J. Hayes, Steve Dunne, Larissa Meinicke
Sci. Comput. Program.3
2012 Towards an Algebra for Real-Time Programs
Brijesh Dongol, Ian J. Hayes, Larissa Meinicke, Kim Solin
RAMiCS3
2012 A Kantorovich-Monadic Powerdomain for Information Hiding, with Probability and Nondeterminism
abstract
We propose a novel domain-theoretic model for nondeterminism, probability and hidden state, with relations on it that compare information flow. One relation is Smyth-like, based on a structural, refinement-like order between semantic elements; the other is a testing order that generalises several extant entropy-based techniques. Our principal theorem is that the two orders are equivalent. The model is based on the Giry/Kantorovich monads, and it abstracts Partially Observable Markov Decision Processes by discarding observables' actual values but retaining the effect they had on an observer's knowledge. We illustrate the model, and its orders, on some small examples, where we find that our formalism provides the apparatus for comparing systems in terms of the information they leak.
Annabelle McIver, Larissa Meinicke, Carroll Morgan
LICS2
2010 Compositional Closure for Bayes Risk in Probabilistic Noninterference
Annabelle McIver, Larissa Meinicke, Carroll Morgan
ICALP (2)2
2010 Unifying Theories of Programming That Distinguish Nontermination and Abort
Ian J. Hayes, Steve Dunne, Larissa Meinicke
MPC3
2010 Linear-Invariant Generation for Probabilistic Programs: - Automated Support for Proof-Based Methods
Joost-Pieter Katoen, Annabelle McIver, Larissa Meinicke, Carroll Morgan
SAS3
2010 Refinement algebra for probabilistic programs
abstract
Abstract We identify a refinement algebra for reasoning about probabilistic program transformations in a total-correctness setting. The algebra is equipped with operators that determine whether a program is enabled or terminates respectively. As well as developing the basic theory of the algebra we demonstrate how it may be used to explain key differences and similarities between standard (i.e. non-probabilistic) and probabilistic programs and verify important transformation theorems for probabilistic action systems.
Larissa Meinicke, Kim Solin
Formal Aspects Comput.1
2009 Security, Probability and Nearly Fair Coins in the Cryptographers' Café
Annabelle McIver, Larissa Meinicke, Carroll Morgan
FM2
2008 Probabilistic Choice in Refinement Algebra
Larissa Meinicke, Ian J. Hayes
MPC1
2008 Algebraic reasoning for probabilistic action systems and while-loops
Larissa Meinicke, Ian J. Hayes
Acta Informatica1
2007 A Stepwise Development Process for Reasoning About the Reliability of Real-Time Systems
Larissa Meinicke, Graeme Smith 0001
IFM1
2006 Reasoning Algebraically About Probabilistic Loops
Larissa Meinicke, Ian J. Hayes
ICFEM1
2006 Continuous Action System Refinement
Larissa Meinicke, Ian J. Hayes
MPC1