Daniel J. Dougherty

dblp:11/1963 · DBLP profile ↗
← Back
39ranked-venue papers
24as first author
0since 2021 · last 2018
—ORCID · none

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

Theory of computation · 26 · 20 first-authorSoftware engineering, systems software and programming languages · 9 · 3 first-authorDatabases, data management, data science and information retrieval · 5 · 1 first-authorArtificial intelligence and machine learning · 4 · 3 first-authorSecurity and privacy · 3 · 3 first-authorSystems, architecture and hardware · 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
7 papers
Requirements engineering and software design · 32% Programming languages and type systems · 29% Operating systems · 25%
Databases, data mining, and information retrieval
2 papers
Data stream processing · 44% Query processing and optimization · 34% Database theory · 22%
Theoretical computer science
5 papers
Logic in computer science · 89% Automated reasoning and model checking · 11%

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

TopicWeightPapersLastEvidence papers
Operating systems
provenance
0.312017
The power of "why" and "why not": enriching scenario exploration with provenance · ESEC/SIGSOFT FSE 2017
Requirements engineering and software design
software architecture
0.312017
The power of "why" and "why not": enriching scenario exploration with provenance · ESEC/SIGSOFT FSE 2017
Logic in computer science
first-order logic
0.212013
Aluminum: principled scenario exploration through minimality · ICSE 2013
Data stream processing
complex event processing
0.112011
High-performance nested CEP query processing over event streams · ICDE 2011
Programming languages and type systems › language semantics
formal semantics
0.112009
Towards an Operational Semantics for Alloy · FM 2009
Programming languages and type systems › language semantics › formal semantics
operational semantics
0.112009
Towards an Operational Semantics for Alloy · FM 2009
Requirements engineering and software design
formal specification
0.112017
The power of "why" and "why not": enriching scenario exploration with provenance · ESEC/SIGSOFT FSE 2017
Database theory
integrity constraints
0.112008
Alchemy: transmuting base alloy specifications into implementations · SIGSOFT FSE 2008
Programming languages and type systems › type systems
intersection types
0.012004
Intersection types for explicit substitutions · Inf. Comput. 2004
Programming languages and type systems
type systems
0.012004
Intersection types for explicit substitutions · Inf. Comput. 2004
Automated reasoning and model checking › automated reasoning › model finding
alloy
0.012009
Towards an Operational Semantics for Alloy · FM 2009
Programming languages and type systems
type theory
0.012000
Equality between Functionals in the Presence of Coproducts · Inf. Comput. 2000
Programming languages and type systems › lambda calculus
explicit substitutions
0.012004
Intersection types for explicit substitutions · Inf. Comput. 2004
Logic in computer science
completeness
0.011995
Equality between Functionals in the Presence of Coproducts · LICS 1995
Logic in computer science › algebraic logic › equational logic
equational theory
0.011995
Equality between Functionals in the Presence of Coproducts · LICS 1995
Logic in computer science
lambda calculus
0.011995
Equality between Functionals in the Presence of Coproducts · LICS 1995
Programming languages and type systems
lambda calculus
0.011992
Adding Algebraic Rewriting to the Untyped Lambda Calculus · Inf. Comput. 1992
Programming languages and type systems › lambda calculus
untyped lambda calculus
0.011992
Adding Algebraic Rewriting to the Untyped Lambda Calculus · Inf. Comput. 1992
Logic in computer science
category theory
0.012000
Equality between Functionals in the Presence of Coproducts · Inf. Comput. 2000
Logic in computer science
rewriting systems
0.011992
Adding Algebraic Rewriting to the Untyped Lambda Calculus · Inf. Comput. 1992
Logic in computer science
term rewriting
0.011992
Adding Algebraic Rewriting to the Untyped Lambda Calculus · Inf. Comput. 1992

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

SAT solving · 0.3scenario finding · 0.3provenance · 0.3operational semantics · 0.2constraint compilation · 0.2alloy · 0.2suffix clustering · 0.1prefix caching · 0.1bit-marking execution · 0.1type theory · 0.1category theory · 0.1lambda calculus · 0.0algebraic rewriting · 0.0
YearPublicationVenuePosition
2018 Security Protocol Analysis in Context: Computing Minimal Executions Using SMT and CPSA
Daniel J. Dougherty, Joshua D. Guttman, John D. Ramsdell
IFM1
2017 CAESAR: Context-Aware Event Stream Analytics for Urban Transportation Services
Olga Poppe, Chuan Lei, Elke A. Rundensteiner, Daniel J. Dougherty, Goutham Deva, Nicholas Fajardo, James Owens, Thomas Schweich, MaryAnn Van Valkenburg, Sarun Paisarnsrisomsuk, Pitchaya Wiratchotisatian, George Gettel, Robert Hollinger, Devin Roberts, Daniel Tocco
EDBT4
2017 User Studies of Principled Model Finder Output
Natasha Danas, Tim Nelson, Lane Harrison, Shriram Krishnamurthi, Daniel J. Dougherty
SEFM5
2017 The power of "why" and "why not": enriching scenario exploration with provenance
abstract
Scenario-finding tools like the Alloy Analyzer are widely used in numerous concrete domains like security, network analysis, UML analysis, and so on. They can help to verify properties and, more generally, aid in exploring a system's behavior.
Tim Nelson, Natasha Danas, Daniel J. Dougherty, Shriram Krishnamurthi
ESEC/SIGSOFT FSE3
2016 A Realizability Interpretation for Intersection and Union Types
Daniel J. Dougherty, Ugo de'Liguoro, Luigi Liquori, Claude Stolze
APLAS1
2016 Context-Aware Event Stream Analytics
Olga Poppe, Chuan Lei, Elke A. Rundensteiner, Daniel J. Dougherty
EDBT4
2015 Exploring Theories with a Model-Finding Assistant
Salman Saghafi, Ryan Danas, Daniel J. Dougherty
CADE3
2014 Decidability for Lightweight Diffie-Hellman Protocols
abstract
Many protocols use Diffie-Hellman key agreement, combined with certified long-term values or digital signatures for authentication. These protocols aim at security goals such as key secrecy, forward secrecy, resistance to key compromise attacks, and various flavors of authentication. However, these protocols are challenging to analyze, both in computational and symbolic models. An obstacle in the symbolic model is the undecidability of unification in many theories in the signature of rings. In this paper, we develop an algebraic version of the symbolic approach, working directly within finite fields, the natural structures for the protocols. The adversary, in giving an attack on a protocol goal in a finite field, may rely on any identity in that field. He defeats the protocol if there are attacks in infinitely many finite fields. We prove that, even for this strong adversary, security goals for a wide class of protocols are decidable.
Daniel J. Dougherty, Joshua D. Guttman
CSF1
2014 A Hybrid Analysis for Security Protocols with State
John D. Ramsdell, Daniel J. Dougherty, Joshua D. Guttman, Paul D. Rowe
IFM2
2013 Aluminum: principled scenario exploration through minimality
abstract
Scenario-finding tools such as Alloy are widely used to understand the consequences of specifications, with applications to software modeling, security analysis, and verification. This paper focuses on the exploration of scenarios: which scenarios are presented first, and how to traverse them in a well-defined way. We present Aluminum, a modification of Alloy that presents only minimal scenarios: those that contain no more than is necessary. Aluminum lets users explore the scenario space by adding to scenarios and backtracking. It also provides the ability to find what can consistently be used to extend each scenario. We describe the semantic basis of Aluminum in terms of minimal models of first-order logic formulas. We show how this theory can be implemented atop existing SAT-solvers and quantify both the benefits of minimality and its small computational overhead. Finally, we offer some qualitative observations about scenario exploration in Aluminum.
Tim Nelson, Salman Saghafi, Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
ICSE3
2012 Realtime healthcare services via nested complex event processing technology
abstract
Complex Event Processing (CEP) over event streams has become increasingly important for real-time applications ranging from healthcare to supply chain management. In such applications, arbitrarily complex sequence patterns as well as non existence of such complex situations must be detected in real time. To assure real-time responsiveness for detection of such complex pattern over high volume high-speed streams, efficient processing techniques must be designed. Unfortunately the efficient processing of complex sequence queries with negations remains a largely open problem to date. To tackle this shortcoming, we designed optimized strategies for handling nested CEP query. In this demonstration, we propose to showcase these techniques for processing and optimizing nested pattern queries on streams. In particular our demonstration showcases a platform for specifying complex nested queries, and selecting one of the alternative optimized techniques including sub-expression sharing and intermediate result caching to process them. We demonstrate the efficiency of our optimized strategies by graphically comparing the execution time of the optimized solution against that of the default processing strategy of nested CEP queries. We also demonstrate the usage of the proposed technology in several healthcare services.
Mo Liu 0001, Medhabi Ray, Dazhi Zhang, Elke A. Rundensteiner, Daniel J. Dougherty, Chetan Gupta 0001, Song Wang 0001, Ismail Ari
EDBT5
2011 High-performance nested CEP query processing over event streams
abstract
Complex event processing (CEP) over event streams has become increasingly important for real-time applications ranging from health care, supply chain management to business intelligence. These monitoring applications submit complex queries to track sequences of events that match a given pattern. As these systems mature the need for increasingly complex nested sequence query support arises, while the state-of-art CEP systems mostly support the execution of flat sequence queries only. To assure real-time responsiveness and scalability for pattern detection even on huge volume high-speed streams, efficient processing techniques must be designed. In this paper, we first analyze the prevailing nested pattern query processing strategy and identify several serious shortcomings. Not only are substantial subsequences first constructed just to be subsequently discarded, but also opportunities for shared execution of nested subexpressions are overlooked. As foundation, we introduce NEEL, a CEP query language for expressing nested CEP pattern queries composed of sequence, negation, AND and OR operators. To overcome deficiencies, we design rewriting rules for pushing negation into inner subexpressions. Next, we devise a normalization procedure that employs these rules for flattening a nested complex event expression. To conserve CPU and memory consumption, we propose several strategies for efficient shared processing of groups of normalized NEEL subexpressions. These strategies include prefix caching, suffix clustering and customized “bit-marking” execution strategies. We design an optimizer to partition the set of all CEP subexpressions in a NEEL normal form into groups, each of which can then be mapped to one of our shared execution operators. Lastly, we evaluate our technologies by conducting a performance study to assess the CPU processing time using real-world stock trades data. Our results confirm that our NEEL execution in many cases performs 100 fold faster than the traditional iterative nested execution strategy for real stock market query workloads.
Mo Liu 0001, Elke A. Rundensteiner, Daniel J. Dougherty, Chetan Gupta 0001, Song Wang 0001, Ismail Ari, Abhay Mehta
ICDE3
2010 The Margrave Tool for Firewall Analysis
Tim Nelson, Christopher Barratt, Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
LISA3
2009 Towards an Operational Semantics for Alloy
Theophilos Giannakopoulos, Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
FM2
2008 Alchemy: transmuting base alloy specifications into implementations
abstract
Alloy specifications are used to define lightweight models of systems. We present Alchemy, which compiles Alloy specifications into implementations that execute against persistent databases. Alchemy translates a subset of Alloy predicates into imperative update operations, and it converts facts into database integrity constraints that it maintains automatically in the face of these imperative actions.
Shriram Krishnamurthi, Kathi Fisler, Daniel J. Dougherty, Daniel Yoo
SIGSOFT FSE3
2008 Characterizing strong normalization in the Curien-Herbelin symmetric lambda calculus: Extending the Coppo-Dezani heritage
Daniel J. Dougherty, Silvia Ghilezan, Pierre Lescanne
Theor. Comput. Sci.1
2007 Obligations and Their Interaction with Programs
Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
ESORICS1
2007 Modular Access Control Via Strategic Rewriting
Daniel J. Dougherty, Claude Kirchner, Hélène Kirchner, Anderson Santana de Oliveira
ESORICS1
2006 Addressed term rewriting systems: application to a typed object calculus
abstract
We present a formalism called addressed term rewriting systems, which can be used to model implementations of theorem proving, symbolic computation and programming languages, especially aspects of sharing, recursive computations and cyclic data structures. Addressed Term Rewriting Systems are therefore well suited to describing object-based languages, and as an example we present a language called and prove a type soundness result.
Daniel J. Dougherty, Pierre Lescanne, Luigi Liquori
Math. Struct. Comput. Sci.1
2006 Normal forms for binary relations
Daniel J. Dougherty, Claudio Gutierrez 0001
Theor. Comput. Sci.1
2005 Strong Normalization of the Dual Classical Sequent Calculus
Daniel J. Dougherty, Silvia Ghilezan, Pierre Lescanne, Silvia Likavec
LPAR1
2004 Characterizing strong normalization in a language with control operators
abstract
We investigate some fundamental properties of the reduction relation in the untyped term calculus derived from Curien and Herbelin's λμμ. The original λμμ has a system of simple types, based on sequent calculus, embodying a Curry-Howard correspondence with classical logic; the significance of the untyped calculus of raw terms is that it is a Turing-complete language for computation with explicit representation of control as well as code. We define a type assignment system for the raw terms satisfying: a term is typable if and only if it is strongly normalizing. The intrinsic symmetry in the λμμ calculus leads to an essential use of both intersection and union types; in contrast to other union-types systems in the literature, our system enjoys the Subject Reduction property.
Daniel J. Dougherty, Silvia Ghilezan, Pierre Lescanne
PPDP1
2004 Intersection types for explicit substitutions
Stéphane Lengrand, Pierre Lescanne, Daniel J. Dougherty, Mariangiola Dezani-Ciancaglini, Steffen van Bakel
Inf. Comput.3
2004 The complexity of the certification of properties of Stable Marriage
Daniel J. Dougherty, Stanley M. Selkow
Inf. Process. Lett.1
2003 Reductions, Intersection Types, and Explicit Substitutions
abstract
This paper is part of a general programme of treating explicit substitutions as the primary λ-calculi from the point of view of foundations as well as applications. We work in a composition-free calculus of explicit substitutions and an augmented calculus obtained by adding explicit garbage-collection, and explore the relationship between intersection-types and reduction. We show that the terms that normalise by leftmost reduction and the terms that normalise by head reduction can each be characterised as the terms typable in a certain system. The relationship between typability and strong normalisation is subtly different from the classical case: we show that typable terms are strongly normalising but give a counterexample to the converse. Our notions of leftmost and head reduction are non-deterministic, and our normalisation theorems apply to any computations obeying these strategies. In this way we refine and strengthen the classical normalisation theorems. The proofs require some new techniques in the presence of reductions involving explicit substitutions. Indeed, our proofs do not rely on results from classical λ-calculus, which in our view is subordinate to the calculus of explicit substitution.
Daniel J. Dougherty, Pierre Lescanne
Math. Struct. Comput. Sci.1
2002 A Decidable Variant of Higher Order Matching
Daniel J. Dougherty, Tomasz Wierzbicki
RTA1
2000 Normal Forms and Reduction for Theories of Binary Relations
Daniel J. Dougherty, Claudio Gutierrez 0001
RTA1
2000 Equality between Functionals in the Presence of Coproducts
Daniel J. Dougherty, Ramesh Subrahmanyam
Inf. Comput.1
1998 Equational Unification, Word Unification, and 2nd-Order Equational Unification
Friedrich Otto, Paliath Narendran, Daniel J. Dougherty
Theor. Comput. Sci.3
1995 Equality between Functionals in the Presence of Coproducts
abstract
Consider the simply-typed lambda calculus with sum-type constructors, and let Set be the standard set-theoretic model of this calculus over an infinite base set. We present a proof system for the calculus (which involves a rule for reasoning by cases) and prove it to be a complete axiomatization of the equational theory of Set. We also develop some results concerning the syntactic properties of the calculus and an interpretation in Set of the equational theory (in the language of the classical simply-typed calculus) of the full function hierarchy over one infinite and one finite base set.
Daniel J. Dougherty, Ramesh Subrahmanyam
LICS1
1995 Some Independent Results for Equational Unification
Friedrich Otto, Paliath Narendran, Daniel J. Dougherty
RTA3
1995 A Combinatory Logic Approach to Higher-Order E-Unification
Daniel J. Dougherty, Patricia Johann
Theor. Comput. Sci.1
1993 Some Lambda Calculi with Categorial Sums and Products
Daniel J. Dougherty
RTA1
1993 Higher-Order Unification via Combinators
Daniel J. Dougherty
Theor. Comput. Sci.1
1992 A Combinatory Logic Approach to Higher-order E-unification (Extended Abstract)
Daniel J. Dougherty, Patricia Johann
CADE1
1992 Adding Algebraic Rewriting to the Untyped Lambda Calculus
Daniel J. Dougherty
Inf. Comput.1
1992 An Improved General E-Unification Method
Daniel J. Dougherty, Patricia Johann
J. Symb. Comput.1
1991 Adding Algebraic Rewriting to the Untyped Lambda Calculus (Extended Abstract)
Daniel J. Dougherty
RTA1
1990 An Improved General E-Unification Method
Daniel J. Dougherty, Patricia Johann
CADE1