Mark N. Wegman

dblp:99/95 · DBLP profile ↗
← Back
26ranked-venue papers
6as first author
0since 2021 · last 2019
—ORCID · none

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

Theory of computation · 12 · 3 first-authorSoftware engineering, systems software and programming languages · 11 · 3 first-authorApplied, interdisciplinary, general and emerging computing · 2Artificial intelligence and machine learning · 1Databases, data management, data science and information retrieval · 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.

Artificial intelligence
2 papers
Trustworthy machine learning · 96% Learning theory · 3% Time series and sequential data · 1%
Software engineering, system software, and programming languages
12 papers
Program analysis · 69% Compilers and program optimization · 29% Programming languages and type systems · 2%
Theoretical computer science
8 papers
Algorithms and data structures · 50% Graph algorithms and graph theory · 30% Computational complexity · 12%

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

TopicWeightPapersLastEvidence papers
Machine learning › Trustworthy machine learning
robustness
0.412019
L2-Nonexpansive Neural Networks · ICLR (Poster) 2019
Program analysis
data flow analysis
0.091991
Constant Propagation with Conditional Branches · ACM Trans. Program. Lang. Syst. 1991
Efficiently Computing Static Single Assignment Form and the Control Dependence Graph · ACM Trans. Program. Lang. Syst. 1991
An Efficient Method of Computing Static Single Assignment Form · POPL 1989
Compilers and program optimization › intermediate representation
static single assignment form
0.021991
Efficiently Computing Static Single Assignment Form and the Control Dependence Graph · ACM Trans. Program. Lang. Syst. 1991
An Efficient Method of Computing Static Single Assignment Form · POPL 1989
Program analysis › data flow analysis
constant propagation
0.021991
Constant Propagation with Conditional Branches · ACM Trans. Program. Lang. Syst. 1991
Constant Propagation with Conditional Branches · POPL 1985
Program analysis › static analysis
interprocedural analysis
0.021991
Constant Propagation with Conditional Branches · ACM Trans. Program. Lang. Syst. 1991
Constant Propagation with Conditional Branches · POPL 1985
Compilers and program optimization › compiler analysis
value numbering
0.021988
Global Value Numbers and Redundant Computations · POPL 1988
Detecting Equality of Variables in Programs · POPL 1988
Program analysis › static analysis
pointer analysis
0.021990
Analysis of Pointers and Structures · PLDI 1990
Constant Propagation with Conditional Branches · POPL 1985
Program analysis
static analysis
0.021991
Constant Propagation with Conditional Branches · ACM Trans. Program. Lang. Syst. 1991
Analysis of Pointers and Structures · PLDI 1990
Program analysis › static analysis › pointer analysis
aliasing analysis
0.011991
Constant Propagation with Conditional Branches · ACM Trans. Program. Lang. Syst. 1991
Program analysis › data flow analysis
dominance frontiers
0.011989
An Efficient Method of Computing Static Single Assignment Form · POPL 1989
Compilers and program optimization
intermediate representation
0.011989
An Efficient Method of Computing Static Single Assignment Form · POPL 1989
Machine learning › Learning theory
online learning
0.011988
Learning Probabilistic Prediction Functions (Extended Abstract) · FOCS 1988
Machine learning › Learning theory › online learning
prediction with expert advice
0.011988
Learning Probabilistic Prediction Functions (Extended Abstract) · FOCS 1988
Machine learning › Time series and sequential data › time series modeling
probabilistic forecasting
0.011988
Learning Probabilistic Prediction Functions (Extended Abstract) · FOCS 1988
Compilers and program optimization › compiler optimization
redundancy elimination
0.011988
Global Value Numbers and Redundant Computations · POPL 1988
Graph algorithms and graph theory
graph algorithms
0.031983
Summarizing Graphs by Regular Expressions · POPL 1983
A Fast and Usually Linear Algorithm for Global Flow Analysis · J. ACM 1976
A Fast and Usually Linear Algorithm for Global Flow Analysis · POPL 1975
Algorithms and data structures › search algorithms
backtracking
0.011985
The Complexity of Backtrack Searches (Preliminary Version) · STOC 1985
Algorithms and data structures › data structure design › search structures
search trees
0.011985
The Complexity of Backtrack Searches (Preliminary Version) · STOC 1985
Program analysis › static analysis
incremental analysis
0.011983
Summarizing Graphs by Regular Expressions · POPL 1983
Graph algorithms and graph theory › graph algorithms
transitive closure
0.011983
Summarizing Graphs by Regular Expressions · POPL 1983
Program analysis › data flow analysis
global flow analysis
0.021976
A Fast and Usually Linear Algorithm for Global Flow Analysis · J. ACM 1976
A Fast and Usually Linear Algorithm for Global Flow Analysis · POPL 1975
Programming languages and type systems
grammar formalisms
0.011980
Parsing for Structural Editors (Extended Abstract) · FOCS 1980
Compilers and program optimization › parsing
incremental parsing
0.011980
Parsing for Structural Editors (Extended Abstract) · FOCS 1980
Compilers and program optimization
parsing
0.011980
Parsing for Structural Editors (Extended Abstract) · FOCS 1980
Cryptographic primitives and cryptanalysis
hash functions
0.011979
New Classes and Applications of Hash Functions · FOCS 1979
Authentication and access control › authentication
message authentication
0.011979
New Classes and Applications of Hash Functions · FOCS 1979
Cryptographic primitives and cryptanalysis › hash functions
universal hash functions
0.011979
New Classes and Applications of Hash Functions · FOCS 1979
Compilers and program optimization › compiler optimization
global optimization
0.011988
Global Value Numbers and Redundant Computations · POPL 1988
Computational complexity › property testing
set equality testing
0.011979
New Classes and Applications of Hash Functions · FOCS 1979
Algorithms and data structures › data structure design
set representation
0.011978
Exact and Approximate Membership Testers · STOC 1978

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

lipschitz constraint · 0.4data flow analysis · 0.0conditional branch analysis · 0.0regular expression summarization · 0.0graph algorithms · 0.0static analysis · 0.0simplicity-accuracy tradeoff · 0.0global value numbering · 0.0tree pattern · 0.0lattice-based analysis · 0.0formalism · 0.0universal2 hashing · 0.0re-parsing · 0.0parse tree update · 0.0complexity analysis · 0.0authentication · 0.0universal classes of hash functions · 0.0probabilistic analysis · 0.0
YearPublicationVenuePosition
2019 L2-Nonexpansive Neural Networks
Haifeng Qian, Mark N. Wegman
ICLR (Poster)2
2009 On the lifetime of multilevel memories
abstract
We study memories capable of storing multiple bits per memory cell, with the property that certain state transitions “wear” the cell. We introduce a model that is relevant for Phase Change Memory, a promising emerging nonvolatile memory technology that exhibits limitations in the number of particular write actions that one may apply to a cell before rendering it unusable. We exploit the theory of Write Efficient Memories to derive a closed form expression for the storage capacity/lifetime fundamental tradeoff for this model. We then present families of codes specialized to distinct ranges for the target lifetimes, covering the full range from moderate redundancy to an arbitrarily large lifetime increase. These codes have low implementation complexity and remarkably good performance; for example in an 8 level cell we can increase the lifetime of a memory by a factor of ten while sacrificing only 2/3 of the uncoded storage capacity of the memory.
Luis A. Lastras, Michele Franceschini, Thomas Mittelholzer, John P. Karidis, Mark N. Wegman
ISIT5
2009 Ferret: Programming language support for multiple dynamic classification
Bard Bloom, Paul T. Keyser, Ian Simmonds, Mark N. Wegman
Comput. Lang. Syst. Struct.4
1991 Efficiently Computing Static Single Assignment Form and the Control Dependence Graph
abstract
In optimizing compilers, data structure choices directly influence the power and efficiency of practical program optimization.A poor choice of data structure can inhibit optimization or slow compilation to the point that advanced optimization features become undesirable.Recently, static single assignment form and the control dependence graph have been proposed to represent data flow and control flow propertiee of programs.Each of these previously unrelated techniques lends efficiency and power to a useful class of program optimization.Although both of these structures are attractive, the difficulty of their construction and their potential size have discouraged their use.We present new algorithms that efficiently compute these data structures for arbitrary control flow graphs.The algorithms use dominance frontiers, a new concept that may have other applications.We also give analytical and experimental evidence that all of these data structures are usually linear in the size of the original program.This paper thus presents strong evidence that these structures can be of practical use in optimization.
Ron Cytron, Jeanne Ferrante, Barry K. Rosen, Mark N. Wegman, F. Kenneth Zadeck
ACM Trans. Program. Lang. Syst.4
1991 Constant Propagation with Conditional Branches
abstract
Constant propagation is a well-known global flow analysis problem. The goal of constant propagation is to discover values that are constant on all possible executions of a program and to propagate these constant values as far foward through the program as possible. Expressions whose operands are all constants can be evaluated at compile time and the results propagated further. Using the algorithms presented in this paper can produce smaller and faster compiled programs. The same algorithms can be used for other kinds of analyses (e.g., type of determination). We present four algorithms in this paper, all conservitive in the sense that all constants may not be found, but each constant found is constant over all possible executions of the program. These algorithms are among the simplest, fastest, and most powerful global constant propagation algorithms known. We also present a new algorithm that performs a form of interprocedural data flow analysis in which aliasing information is gathered in conjunction with constant progagation. Several variants of this algorithm are considered.
Mark N. Wegman, F. Kenneth Zadeck
ACM Trans. Program. Lang. Syst.1
1990 Analysis of Pointers and Structures
abstract
article Free Access Share on Analysis of pointers and structures Authors: David R. Chase View Profile , Mark Wegman IBM T. J. Watson Research Center, P.O. Box 704, Yorktown, Heights, NY IBM T. J. Watson Research Center, P.O. Box 704, Yorktown, Heights, NYView Profile , F. Kenneth Zadeck Computer Science Dept., P.O. Box 1910, Brown University, Providence Computer Science Dept., P.O. Box 1910, Brown University, ProvidenceView Profile Authors Info & Claims ACM SIGPLAN NoticesVolume 25Issue 6Jun. 1990 pp 296–310https://doi.org/10.1145/93548.93585Online:01 June 1990Publication History 431citation2,454DownloadsMetricsTotal Citations431Total Downloads2,454Last 12 Months69Last 6 weeks21 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
David R. Chase, Mark N. Wegman, F. Kenneth Zadeck
PLDI2
1989 An Efficient Method of Computing Static Single Assignment Form
abstract
Article An efficient method of computing static single assignment form Share on Authors: R. Cytron IBM Research Division, T. J. Watson Research Center, Yorktown Heights, NY IBM Research Division, T. J. Watson Research Center, Yorktown Heights, NYView Profile , J. Ferrante IBM Research Division, T. J. Watson Research Center, Yorktown Heights, NY IBM Research Division, T. J. Watson Research Center, Yorktown Heights, NYView Profile , B. K. Rosen IBM Research Division, T. J. Watson Research Center, Yorktown Heights, NY IBM Research Division, T. J. Watson Research Center, Yorktown Heights, NYView Profile , M. N. Wegman IBM Research Division, T. J. Watson Research Center, Yorktown Heights, NY IBM Research Division, T. J. Watson Research Center, Yorktown Heights, NYView Profile , F. K. Zadeck Computer Science Dept., Brown University, Providence, RI Computer Science Dept., Brown University, Providence, RIView Profile Authors Info & Claims POPL '89: Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languagesJanuary 1989 Pages 25–35https://doi.org/10.1145/75277.75280Online:03 January 1989Publication History 308citation1,950DownloadsMetricsTotal Citations308Total Downloads1,950Last 12 Months119Last 6 weeks14 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access
Ron Cytron, Jeanne Ferrante, Barry K. Rosen, Mark N. Wegman, F. Kenneth Zadeck
POPL4
1988 Learning Probabilistic Prediction Functions (Extended Abstract)
abstract
The question of how to learn rules, when those rules make probabilistic statements about the future, is considered. Issues are discussed that arise when attempting to determine what a good prediction function is, when those prediction functions make probabilistic assumptions. Learning has at least two purposes: to enable the learner to make predictions in the future and to satisfy intellectual curiosity as to the underlying cause of a process. Two results related to these distinct goals are given. In both cases, the inputs are a countable collection of functions which make probabilistic statements about a sequence of events. One of the results shows how to find one of the functions, which generated the sequence, the other result allows to do as well in terms of predicting events as the best of the collection. In both cases the results are obtained by evaluating a function based on a tradeoff between its simplicity and the accuracy of its predictions.>
Alfredo De Santis, George Markowsky, Mark N. Wegman
FOCS3
1988 Detecting Equality of Variables in Programs
abstract
Article Free Access Share on Detecting equality of variables in programs Authors: B. Alpern IBM Thomas J. Watson Research Center, Yorktown Heights, NY IBM Thomas J. Watson Research Center, Yorktown Heights, NYView Profile , M. N. Wegman IBM Thomas J. Watson Research Center, Yorktown Heights, NY IBM Thomas J. Watson Research Center, Yorktown Heights, NYView Profile , F. K. Zadeck Department of Computer Science, Brown University, Providence, RI Department of Computer Science, Brown University, Providence, RIView Profile Authors Info & Claims POPL '88: Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languagesJanuary 1988 Pages 1–11https://doi.org/10.1145/73560.73561Published:13 January 1988Publication History 264citation2,559DownloadsMetricsTotal Citations264Total Downloads2,559Last 12 Months137Last 6 weeks21 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
Bowen Alpern, Mark N. Wegman, F. Kenneth Zadeck
POPL2
1988 Global Value Numbers and Redundant Computations
abstract
Article Free Access Share on Global value numbers and redundant computations Authors: B. K. Rosen IBM Thomas J. Watson Research Center, Yorktown Heights, NY IBM Thomas J. Watson Research Center, Yorktown Heights, NYView Profile , M. N. Wegman IBM Thomas J. Watson Research Center, Yorktown Heights, NY IBM Thomas J. Watson Research Center, Yorktown Heights, NYView Profile , F. K. Zadeck Department of Computer Science, Brown University, Providence, RI Department of Computer Science, Brown University, Providence, RIView Profile Authors Info & Claims POPL '88: Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languagesJanuary 1988 Pages 12–27https://doi.org/10.1145/73560.73562Published:13 January 1988Publication History 278citation1,997DownloadsMetricsTotal Citations278Total Downloads1,997Last 12 Months240Last 6 weeks26 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
Barry K. Rosen, Mark N. Wegman, F. Kenneth Zadeck
POPL2
1985 Constant Propagation with Conditional Branches
abstract
Constant propagation is a well-known global flow analysis problem. The goal of constant propagation is to discover values that are constant on all possible executions of a program and to propagate these constant values as far forward through the program as possible. Expressions whose operands are all constants can be evaluated at compile time and the results propagated further. Using the algorithms presented in this paper can produce smaller and faster compiled programs. The same algorithms can be used for other kinds of analyses (e.g., type determina-tion). We present four algorithms in this paper, all conservative in the sense that all constants may not be found, but each constant found is constant over all possible executions of the program. These algorithms are among the simplest, fastest, and most powerful global constant propagation algorithms known. We also present a new algorithm that performs a form of interprocedural data flow analysis in which aliasing information is gathered in conjunction with constant propagation. Several variants of this algorithm are considered.
Mark N. Wegman, F. Kenneth Zadeck
POPL1
1985 The Complexity of Backtrack Searches (Preliminary Version)
abstract
In this paper, we study the complexity of finding an efficient search for combinatorial problems which are commonly solved by backtracking. First, a formalism is introduced. Backtrack searches are ordinarily thought of as following a tree pattern. Our model is considerably more general, and there are problems where this allows much shorter searches.
Larry Carter, Larry J. Stockmeyer, Mark N. Wegman
STOC3
1983 Summarizing Graphs by Regular Expressions
abstract
This paper shows how to rapidly determine the path relationships between k different elements of a graph (of the type primarily resulting from programs) in time proportional to k log k. Given the path relations between elements u,v, and w, it is easy to answer questions like "is there a path from u to w?" and "is there a path from u to w which does not go through v?" (The elements can be either nodes or edges.)This algorithm can be used in a wide variety of contexts. For example, in order to prove that whenever control reaches a point p, the last assignment of a value to a variable, v, has always been of the form v := c, where c is a certain constant, it is only necessary to know the path relations between the point p and all assignments to that variable.Ordinarily one is interested in the possible points, where a variable was assigned its current value (definition points), and at the points at which that value is used. Previously, all flow analysis algorithms would compute the definition points of all variables at all nodes in the graph, despite the fact that any given node may use only one of those variables.This algorithm may also be a generally useful graph algorithm. It can compute transitive closure more rapidly than the standard algorithm using the current best matrix multiplication algorithm on the kinds of graphs resulting from programs. The algorithm proceeds by preprocessing the graph, creating tables that can be used later to rapidly determine flow relationships between any sections of the program. In addition, small changes to the graph need only result in small changes to the tables. The algorithm is therefore suitable for incremental analysis.
Mark N. Wegman
POPL1
1981 A Program Development Tool
abstract
In this paper we describe how we have combined a number of tools (most of which understand a particular programming language) into a single system to aid in the reading, writing, and running of programs. We discuss the efficacy and the structure of our system. For the last two years the system has been used to build itself; it currently consists of 500 kilobytes of machine code (25,000 lines of LISP/370 code) and approximately one hundred commands with large numbers of options. We will describe some of the experience we have gained in evolving this system. We first indicate the system components which users have found most important; some of the tools described here are new in the literature. Second, we emphasize how these tools form a synergistic union, and we illustrate this point with a number of examples. Third, we illustrate the use of various system commands in the development of a simple program. Fourth, we discuss the implementation of the system components and indicate how some of them have been generalized.
Cyril N. Alberga, Allen L. Brown, George B. Leeman Jr., Martin Mikelsons, Mark N. Wegman
POPL5
1981 New Hash Functions and Their Use in Authentication and Set Equality
Mark N. Wegman, Larry Carter
J. Comput. Syst. Sci.1
1980 Parsing for Structural Editors (Extended Abstract)
abstract
We present techniques that enable the construction of an algorithm capable of re-parsing a string after another string has been inserted into it. Let M be the minimal, under certain restrictions, number of changes which must be made to the parse tree to reflect the insertions. Then the algorithm we present should work in no more time than M times a log factor of the height of the parse tree. The grammars we allow include all LR(1) grammars.
Mark N. Wegman
FOCS1
1980 Equivalence of Free Boolean Graphs can be Decided Probabilistically in Polynomial Time
Manuel Blum 0001, Ashok K. Chandra, Mark N. Wegman
Inf. Process. Lett.3
1979 New Classes and Applications of Hash Functions
abstract
In this paper we exhibit several new classes of hash functions with certain desirable properties, and introduce two novel applications for hashing which make use of these functions. One class of functions is small, yet is almost universal2. If the functions hash n-bit long names into m-bit indices, then specifying a member of the class requires only O((m + log2log2(n)) log2(n)) bits as compared to O(n) bits for earlier techniques. For long names, this is about a factor of m larger than the lower bound of m+log2n-log2m bits. An application of this class is a provably secure authentication techniques for sending messages over insecure lines. A second class of functions satisfies a much stronger property than universal2. We present the application of testing sets for equality. The authentication technique allows the receiver to be certain that a message is genuine. An 'enemy' - even one with infinite computer resources - cannot forge or modify a message without detection. The set equality technique allows the the operations 'add member to set', 'delete member from set' and 'test two sets for equality' to be performed in expected constant time and with less than a specified probability of error.
Mark N. Wegman, Larry Carter
FOCS1
1979 Universal Classes of Hash Functions
Larry Carter, Mark N. Wegman
J. Comput. Syst. Sci.2
1978 Analysis of a Universal Class of Hash Functions
George Markowsky, Larry Carter, Mark N. Wegman
MFCS3
1978 Exact and Approximate Membership Testers
abstract
In this paper we consider the question of how much space is needed to represent a set. Given a finite universe U and some subset V (called the vocabulary), an exact membership tester is a procedure that for each element s in U determines if s is in V. An approximate membership tester is allowed to make mistakes: we require that the membership tester correctly accepts every element of V, but we allow it to also accept a small fraction of the elements of U - V.
Larry Carter, Robert W. Floyd, John Gill, George Markowsky, Mark N. Wegman
STOC5
1978 Linear Unification
Mike Paterson, Mark N. Wegman
J. Comput. Syst. Sci.2
1977 Universal Classes of Hash Functions (Extended Abstract)
abstract
This paper gives an input independent average linear time algorithm for storage and retrieval on keys. The algorithm makes a random choice of hash function from a suitable class of hash functions. Given any sequence of inputs the expected time (averaging over all functions in the class) to store and retrieve elements is linear in the length of the sequence. The number of references to the data base required by the algorithm for any input is extremely close to the theoretical minimum for any possible hash function with randomly distributed inputs. We present three suitable classes of hash functions which also may be evaluated rapidly. The ability to analyze the cost of storage and retrieval without worrying about the distribution of the input allows as corollaries improvements on the bounds of several algorithms.
Larry Carter, Mark N. Wegman
STOC2
1976 Linear Unification
abstract
A unification algorithm is described which tests a set of expressions for unifiability and which requires time and space which are only linear in the size of the input.
Mike Paterson, Mark N. Wegman
STOC2
1976 A Fast and Usually Linear Algorithm for Global Flow Analysis
abstract
A new algorithm for global flow analysis on reducible graphs is presented. The algorithm is shown to treat a very general class of function spaces. For a graph of e edges, the algorithm has a worst-case time bound of O ( e log e ) function operations. It is also shown that in programming terms, the number of operations is proportional to e plus the number of exits from program loops. Consequently a restriction to one-entry one-exit control structures guarantees linearity. The algorithm can be extended to yet larger classes of function spaces and graphs by relaxing the time bound. Examples are given of code improvement problems which can be solved using the algorithm.
Susan L. Graham, Mark N. Wegman
J. ACM2
1975 A Fast and Usually Linear Algorithm for Global Flow Analysis
abstract
A new algorithm for global flow analysis on reducible graphs is presented. The algorithm is shown to treat a very general class of function spaces. For a graph of e edges, the algorithm has a worst case time bound of 0(e log2e) function operations. In programming terms, the number of operations is shown to be proportional to e + the number of exit nodes from program loops. Consequently a restriction to one-entry one-exit control structures guarantees linearity. It is shown that by relaxing these time bounds, a yet wider class of function spaces can be handled.
Susan L. Graham, Mark N. Wegman
POPL2