Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Michael R. Laurence

dblp:89/5499 · DBLP profile ↗
← Back
10ranked-venue papers
4as first author
0since 2021 · last 2018
—ORCID · none

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

Theory of computation · 8 · 4 first-authorSoftware engineering, systems software and programming languages · 1Applied, interdisciplinary, general and emerging computing · 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
1 paper
Program analysis · 75% Compilers and program optimization · 25%

Topics — the 4 heaviest of 4, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis › static analysis › program slicing
backward slicing
0.312018
Static Backward Slicing of Non-deterministic Programs and Systems · ACM Trans. Program. Lang. Syst. 2018
Compilers and program optimization › dependence analysis
control dependence
0.312018
Static Backward Slicing of Non-deterministic Programs and Systems · ACM Trans. Program. Lang. Syst. 2018
Program analysis
data flow analysis
0.312018
Static Backward Slicing of Non-deterministic Programs and Systems · ACM Trans. Program. Lang. Syst. 2018
Program analysis › static analysis
program slicing
0.312018
Static Backward Slicing of Non-deterministic Programs and Systems · ACM Trans. Program. Lang. Syst. 2018
YearPublicationVenuePosition
2018 Static Backward Slicing of Non-deterministic Programs and Systems
abstract
A theory of slicing non-deterministic programs and systems is developed. Non-deterministic programs and systems are represented as non-deterministic program graphs (NDPGs) that allow arbitrary non-deterministic branching to be expressed. Structural and semantic relationships that must exist between an NDPG and (1) its non-termination insensitive (weak) slices and (2) its non-termination sensitive (strong) slices are defined. Weak and strong commitment closure are introduced. These are the NDPG equivalents of being closed under non-termination sensitive and non-termination insensitive control dependence; properties defined on subsets of vertices of the equivalent deterministic structure: the control flow graph. It is proved that if a subset of the vertices of an NDPG is both data dependence closed and (weak/strong) commitment closed, then the resulting induced graph will, indeed, satisfy our structural and semantic requirements. O ( n 3 ) algorithms for computing minimal data and weak/strong commitment closed sets are given. The resulting induced graphs are thus guaranteed to be weak and strong slices, respectively. It is demonstrated, with examples, that programs written in Dijkstra's non-deterministic guarded command language (DNGCL) can be converted to NDPGs to which our slicing algorithms can then be applied. It is proved that the resulting slices (NDPGs) can always be converted back to valid DNGCL programs, highlighting the applicability of our approach to slicing at the source code level.
Sebastian Danicic, Michael R. Laurence
ACM Trans. Program. Lang. Syst.2
2014 Completeness Theorems for Bi-Kleene Algebras and Series-Parallel Rational Pomset Languages
Michael R. Laurence, Georg Struth
RAMiCS1
2012 On Completeness of Omega-Regular Algebras
Michael R. Laurence, Georg Struth
RAMiCS1
2012 Complexity of Data Dependence Problems for Program Schemas with Concurrency
abstract
The problem of deciding whether one point in a program is data dependent upon another is fundamental to program analysis and has been widely studied. In this article we consider this problem at the abstraction level of program schemas in which computations occur in the Herbrand domain of terms and predicate symbols, which represent arbitrary predicate functions, are allowed. Given a vertex l in the flowchart of a schema S having only equality (variable copying) assignments, and variables v , w , we show that it is PSPACE-hard to decide whether there exists an execution of a program defined by S in which v holds the initial value of w at at least one occurrence of l on the path of execution, with membership in PSPACE holding provided there is a constant upper bound on the arity of any predicate in S . We also consider the ‘dual’ problem in which v is required to hold the initial value of w at every occurrence of l , for which the analogous results hold. Additionally, the former problem for programs with nondeterministic branching (in effect, free schemas) in which assignments with functions are allowed is proved to be polynomial-time decidable provided a constant upper bound is placed upon the number of occurrences of the concurrency operator in the schemas being considered. This result is promising since many concurrent systems have a relatively small number of threads (concurrent processes), especially when compared with the number of statements they have.
Sebastian Danicic, Robert M. Hierons, Michael R. Laurence
ACM Trans. Comput. Log.3
2011 Omega Algebras and Regular Equations
Michael R. Laurence, Georg Struth
RAMiCS1
2011 On the computational complexity of dynamic slicing problems for program schemas
abstract
Given a program, a quotient can be obtained from it by deleting zero or more statements. The field of program slicing is concerned with computing a quotient of a program that preserves part of the behaviour of the original program. All program slicing algorithms take account of the structural properties of a program, such as control dependence and data dependence, rather than the semantics of its functions and predicates, and thus work, in effect, with program schemas. The dynamic slicing criterion of Korel and Laski requires only that program behaviour is preserved in cases where the original program follows a particular path, and that the slice/quotient follows this path. In this paper we formalise Korel and Laski's definition of a dynamic slice as applied to linear schemas, and also formulate a less restrictive definition in which the path through the original program need not be preserved by the slice. The less restrictive definition has the benefit of leading to smaller slices. For both definitions, we compute complexity bounds for the problems of establishing whether a given slice of a linear schema is a dynamic slice and whether a linear schema has a non-trivial dynamic slice, and prove that the latter problem is NP-hard in both cases. We also give an example to prove that minimal dynamic slices (whether or not they preserve the original path) need not be unique.
Sebastian Danicic, Robert M. Hierons, Michael R. Laurence
Math. Struct. Comput. Sci.3
2011 A unifying theory of control dependence and its application to arbitrary program structures
Sebastian Danicic, Richard W. Barraclough, Mark Harman, John Howroyd, Ákos Kiss 0001, Michael R. Laurence
Theor. Comput. Sci.6
2007 Equivalence of linear, free, liberal, structured program schemas is decidable in polynomial time
Sebastian Danicic, Mark Harman, Robert M. Hierons, John Howroyd, Michael R. Laurence
Theor. Comput. Sci.5
2005 Static Program Slicing Algorithms are Minimal for Free Liberal Program Schemas
abstract
Program slicing is an automated source code extraction technique that has been applied to a number of problems including testing, debugging, maintenance, reverse engineering, program comprehension, reuse and program integration. In all these applications the size of the slice is crucial; the smaller the better. It is known that statement minimal slices are not computable, but the question of dataflow minimal slicing has remained open since Weiser posed it in 1979. This paper proves that static slicing algorithms produce dataflow minimal end slices for programs which can be represented as schemas which are free and liberal.
Sebastian Danicic, Chris Fox, Mark Harman, Robert M. Hierons, John Howroyd, Michael R. Laurence
Comput. J.6
2003 Equivalence of conservative, free, linear program schemas is decidable
Michael R. Laurence, Sebastian Danicic, Mark Harman, Robert M. Hierons, John Howroyd
Theor. Comput. Sci.1