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

Chucky Ellison

dblp:22/7532 · also Charles M. Ellison · DBLP profile ↗
← Back
4ranked-venue papers
1as first author
0since 2021 · last 2015
—ORCID · none

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

Software engineering, systems software and programming languages · 4 · 1 first-authorTheory of computation · 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
4 papers
Programming languages and type systems · 47% Software testing · 16% Debugging and program repair · 16%
Theoretical computer science
1 paper
Automated reasoning and model checking · 100%

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

TopicWeightPapersLastEvidence papers
Programming languages and type systems
language semantics
0.422015
Defining the undefinedness of C · PLDI 2015
An executable formal semantics of C with applications · POPL 2012
Programming languages and type systems › language semantics › formal semantics
executable semantics
0.322012
An executable formal semantics of C with applications · POPL 2012
Executing Formal Semantics with the K Tool · FM 2012
Programming languages and type systems › language semantics
formal semantics
0.222015
Executing Formal Semantics with the K Tool · FM 2012
Defining the undefinedness of C · PLDI 2015
Debugging and program repair › fault localization
compiler bug isolation
0.112012
Test-case reduction for C compiler bugs · PLDI 2012
Software testing
compiler testing
0.112012
Test-case reduction for C compiler bugs · PLDI 2012
Debugging and program repair
fault localization
0.112012
Test-case reduction for C compiler bugs · PLDI 2012
Program verification
model checking
0.112012
An executable formal semantics of C with applications · POPL 2012
Software testing › test optimization
test case reduction
0.112012
Test-case reduction for C compiler bugs · PLDI 2012
Program analysis › error detection
runtime error detection
0.012012
An executable formal semantics of C with applications · POPL 2012

Methods — techniques the papers use, named apart from their topics

negative semantics · 0.2automated checker extraction · 0.2state space search · 0.1modular program transformation · 0.1interpreter · 0.1fixpoint computation · 0.1delta debugging · 0.1
YearPublicationVenuePosition
2015 Defining the undefinedness of C
abstract
We present a ``negative'' semantics of the C11 language---a semantics that does not just give meaning to correct programs, but also rejects undefined programs. We investigate undefined behavior in C and discuss the techniques and special considerations needed for formally specifying it. We have used these techniques to modify and extend a semantics of C into one that captures undefined behavior. The amount of semantic infrastructure and effort required to achieve this was unexpectedly high, in the end nearly doubling the size of the original semantics. From our semantics, we have automatically extracted an undefinedness checker, which we evaluate against other popular analysis tools, using our own test suite in addition to a third-party test suite. Our checker is capable of detecting examples of all 77 categories of core language undefinedness appearing in the C11 standard, more than any other tool we considered. Based on this evaluation, we argue that our work is the most comprehensive and complete semantic treatment of undefined behavior in C, and thus of the C language itself.
Chris Hathhorn, Chucky Ellison, Grigore Rosu
PLDI2
2012 Executing Formal Semantics with the K Tool
David Lazar, Andrei Arusoaie, Traian-Florin Serbanuta, Chucky Ellison, Radu Mereuta, Dorel Lucanu, Grigore Rosu
FM4
2012 Test-case reduction for C compiler bugs
abstract
To report a compiler bug, one must often find a small test case that triggers the bug. The existing approach to automated test-case reduction, delta debugging, works by removing substrings of the original input; the result is a concatenation of substrings that delta cannot remove. We have found this approach less than ideal for reducing C programs because it typically yields test cases that are too large or even invalid (relying on undefined behavior). To obtain small and valid test cases consistently, we designed and implemented three new, domain-specific test-case reducers. The best of these is based on a novel framework in which a generic fixpoint computation invokes modular transformations that perform reduction operations. This reducer produces outputs that are, on average, more than 25 times smaller than those produced by our other reducers or by the existing reducer that is most commonly used by compiler developers. We conclude that effective program reduction requires more than straightforward delta debugging.
John Regehr, Yang Chen 0024, Pascal Cuoq, Eric Eide, Chucky Ellison, Xuejun Yang
PLDI5
2012 An executable formal semantics of C with applications
abstract
This paper describes an executable formal semantics of C. Being executable, the semantics has been thoroughly tested against the GCC torture test suite and successfully passes 99.2% of 776 test programs. It is the most complete and thoroughly tested formal definition of C to date. The semantics yields an interpreter, debugger, state space search tool, and model checker "for free". The semantics is shown capable of automatically finding program errors, both statically and at runtime. It is also used to enumerate nondeterministic behavior.
Chucky Ellison, Grigore Rosu
POPL1