Demo Data from SIGIR 2026 / reviewers in the wild / expert
Elizabeth I. Leonard
dblp:99/5383
· DBLP profile ↗
10ranked-venue papers
3as first author
0since 2021 · last 2017
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 8 · 3 first-authorTheory of computation · 6 · 3 first-authorSecurity and privacy · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
3 papers |
Program verification · 100% | |
| Network and information security
2 papers |
Systems and software security · 100% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Embedded and real-time systems · 100% |
Topics — the 6 heaviest of 7, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Systems and software security
operating system security |
0.1 | 2 | 2008 | Applying Formal Methods to a Certifiably Secure Software System · IEEE Trans. Software Eng. 2008 Formal specification and verification of data separation in a separation kernel for an embedded system · CCS 2006 |
Program verification
refinement |
0.1 | 1 | 2009 | A Formal Method for Developing Provably Correct Fault-Tolerant Systems Using Partial Refinement and Composition · FM 2009 |
Program verification
security property verification |
0.1 | 1 | 2008 | Applying Formal Methods to a Certifiably Secure Software System · IEEE Trans. Software Eng. 2008 |
Systems and software security › security engineering › security certification
common criteria |
0.0 | 1 | 2008 | Applying Formal Methods to a Certifiably Secure Software System · IEEE Trans. Software Eng. 2008 |
Systems and software security › security engineering
security certification |
0.0 | 1 | 2008 | Applying Formal Methods to a Certifiably Secure Software System · IEEE Trans. Software Eng. 2008 |
Embedded and real-time systems › embedded software › embedded operating systems
separation kernel |
0.0 | 1 | 2006 | Formal specification and verification of data separation in a separation kernel for an embedded system · CCS 2006 |
Methods — techniques the papers use, named apart from their topics
mechanized proof · 0.4formal specification · 0.4common criteria · 0.2code partitioning · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2017 | Property templates for checking source code securityabstractThis paper describes a method for using property definition templates to support automatic analysis of source code for application-specific security properties. The method is illustrated on an example data flow property of a C program. Elizabeth I. Leonard, Myla Archer, Constance L. Heitmeyer |
MEMOCODE | 1 |
| 2015 | Building high assurance human-centric decision systems
Constance L. Heitmeyer, Marc Pickett, Elizabeth I. Leonard, Myla Archer, Indrakshi Ray, David W. Aha, J. Gregory Trafton |
Autom. Softw. Eng. | 3 |
| 2012 | Direct generation of invariants for reactive modelsabstractRecently, software practitioners, using model-based engineering and similar methods, have begun developing software from models. After creating a model of the required system behavior, a developer can obtain assurance of the model by validating that it captures the intended behavior and verifying that it satisfies critical properties. Invariants are important to both validation, as a check that the model's behavior matches the intended behavior, and verification, as auxiliaries in proving critical system properties, either automatically or with human guidance. A common approach to discovering invariants is to propose and then check candidate invariants. In contrast, our invariant generation techniques deduce invariants directly from the specification of a model. This paper presents more powerful versions of our earlier techniques for invariant generation and illustrates their utility for a real-world AirLock system. Elizabeth I. Leonard, Myla Archer, Constance L. Heitmeyer, Ralph D. Jeffords |
MEMOCODE | 1 |
| 2010 | Model-based construction and verification of critical systems using composition and partial refinement
Ralph D. Jeffords, Constance L. Heitmeyer, Myla Archer, Elizabeth I. Leonard |
Formal Methods Syst. Des. | 4 |
| 2009 | A Formal Method for Developing Provably Correct Fault-Tolerant Systems Using Partial Refinement and Composition
Ralph D. Jeffords, Constance L. Heitmeyer, Myla Archer, Elizabeth I. Leonard |
FM | 4 |
| 2008 | Applying Formal Methods to a Certifiably Secure Software SystemabstractA major problem in verifying the security of code is that the code's large size makes it much too costly to verify in its entirety. This article describes a novel and practical approach to verifying the security of code which substantially reduces the cost of verification. In this approach, the security property of interest is represented formally and a compact security model, containing only information needed to reason about the policy, is constructed. To reduce the cost of verification, the code to be verified is partitioned into three categories: Only the first category, less than 10% of the code, requires requires substantial effort to verify; the proof of the other two categories is relatively trivial. Our approach was developed to support a Common Criteria evaluation of the separation kernel of an embedded software system. This article describes 1) our techniques and theory for verifying the kernel code and 2) the artifacts produced: a Top Level Specification (TLS), a formal statement of the security property, a mechanized proof that the TLS satisfies the property, the partitioning of the code, and a demonstration that the code conforms to the TLS. The article also presents the formal argument that the kernel code conforms to the TLS and consequently satisfies the security property. Constance L. Heitmeyer, Myla Archer, Elizabeth I. Leonard, John McLean |
IEEE Trans. Software Eng. | 3 |
| 2006 | Formal specification and verification of data separation in a separation kernel for an embedded systemabstractAlthough many algorithms, hardware designs, and security protocols have been formally verified, formal verification of the security of software is still rare. This is due in large part to the large size of software, which results in huge costs for verification. This paper describes a novel and practical approach to formally establishing the security of code. The approach begins with a well-defined set of security properties and, based on the properties, constructs a compact security model containing only information needed to rea-son about the properties. Our approach was formulated to provide evidence for a Common Criteria evaluation of an embedded soft-ware system which uses a separation kernel to enforce data separation. The paper describes 1) our approach to verifying the kernel code and 2) the artifacts used in the evaluation: a Top Level Specification (TLS) of the kernel behavior, a formal definition of dataseparation, a mechanized proof that the TLS enforces data separation, code annotated with pre- and postconditions and partitioned into three categories, and a formal demonstration that each category of code enforces data separation. Also presented is the formal argument that the code satisfies the TLS. Constance L. Heitmeyer, Myla Archer, Elizabeth I. Leonard, John D. McLean |
CCS | 3 |
| 2006 | Generating optimized code from SCR specificationsabstractA promising trend in software development is the increasing adoption of model-driven design. In this approach, a developer first constructs an abstract model of the required program behavior in a language, such as Statecharts or Stateflow, and then uses a code generator to automatically transform the model into an executable program. This approach has many advantages---typically, a model is not only more concise than code and hence more understandable, it is also more amenable to mechanized analysis. Moreover, automatic generation of code from a model usually produces code with fewer errors than hand-crafted code.One serious problem, however, is that a code generator may produce inefficient code. To address this problem, this paper describes a method for generating efficient code from SCR (Software Cost Reduction) specifications. While the SCR tabular notation and tools have been used successfully to specify, simulate, and verify numerous embedded systems, until now SCR has lacked an automated method for generating optimized code. This paper describes an efficient method for automatic code generation from SCR specifications, together with an implementation and an experimental evaluation. The method first synthesizes an execution-flow graph from the specification, then applies three optimizations to the graph, namely, input slicing, simplification, and output slicing, and then automatically generates code from the optimized graph. Experiments on seven benchmarks demonstrate that the method produces significant performance improvements in code generated from large specifications. Moreover, code generation is relatively fast, and the code produced is relatively compact. Tom Rothamel, Yanhong A. Liu, Constance L. Heitmeyer, Elizabeth I. Leonard |
LCTES | 4 |
| 2005 | Extended abstract: organizing automaton specifications to achieve faithful representationabstractWe have developed an approach to organizing automaton specifications in which a reference variable captures the essential state and shadow variables are used to facilitate expressiveness. We have applied our approach in specifying automaton models for three different examples: TESLA protocol, SELinux security policies and leader election for IEEE 1394. In all three cases the resulting specification bears an obvious close relationship to the actual system being modeled. Elizabeth I. Leonard, Myla Archer |
MEMOCODE | 1 |
| 2004 | Using invariants to optimize formal specifications before code synthesisabstractFormal specifications of required system behavior can be analyzed, verified, and validated, giving high confidence that the specification captures the desired behavior Transferring this confidence to the system implementation depends on a formal link between requirements and implementation. The automatic generation of probably correct code provides just such a link. While optimization is usually performed on code to achieve efficiency, we propose to optimize the formal specification before generating code, thus providing optimization independent of the particular code generation method. This paper investigates the use of invariants in optimizing code generated from formal specifications in the software cost reduction (SCR) tabular notation. We show that invariants (1) provide the basis for simplifying expressions that otherwise cannot be improved using traditional compiler optimization techniques, and (2) allow detection and elimination of parts of the specification that would lead to unreachable code. Ralph D. Jeffords, Elizabeth I. Leonard |
MEMOCODE | 2 |