A Generalized Reduction Construct for Deterministic Openmp

Total Page:16

File Type:pdf, Size:1020Kb

A Generalized Reduction Construct for Deterministic Openmp A Generalized Reduction Construct for Deterministic OpenMP Amittai Aviram and Bryan Ford (famittai.aviram,[email protected]) January 28, 2012 Abstract dle shared documents|providing an isolated working copy for each thread, merging these copies at syn- In parallel programming, a reduction is an opera- chronization points, detecting any conflicting writes tion that combines values across threads into a sin- at merge time, and treating them as errors. gle result, and can be designed and implemented The OpenMP standard supports a reduction fea- so as to enforce determinism, not only on the re- ture, which makes it possible to aggregate computed sult, but also on the intermediate values and eval- data across threads|for instance, to get the sum or uation sequence. These features make the reduction product of individual values computed severally by an attractive feature for a language-based approach concurrent threads. The reduction is an attractive to deterministic parallelism, especially one that, like feature for DOMP. Although it may look like a pur- OpenMP, provides annotations to parallelize legacy poseful race condition, because each thread seems to serial code. Hence reductions are a planned feature update the reduction variable at the same time, it of the Deterministic OpenMP (DOMP) project. To is in fact inherently deterministic: a sum or product enable DOMP to help programmers eliminate non- will always be the same on every run with the same deterministic code wherever possible, we propose a input, regardless of scheduling accidents, so long as generalized reduction that supports arbitrary data the individual summands or factors are the same. types and user-defined operations|a generalization Reductions fit in well with DOMP's goals. But, rich in challenges for language design and implemen- in order to be compatible with working-copies de- tation. terminism, DOMP's API must exclude certain other features of OpenMP because they are naturally nondeterministic|low-level race management con- 1 Introduction structs such as atomic, critical, and flush. Research suggests, however, that programmers often use these Deterministic OpenMP (DOMP) is a recently pro- features only in order to implement, by hand, higher- posed approach to the problem of achieving efficient, level idioms that are, themselves, inherently deter- flexible, user-friendly deterministic parallelism. It ministic, but for which OpenMP offers no ready-made brings together previous developments from the two constructs. One such case is a more general form areas of programming languages and systems in or- of reduction. OpenMP only supports reductions for der to offer a combination of convenience to the pro- scalar value types, such as int and double, and for a grammer and strict enforcement of race-freedom and restricted set of simple combining operations, such as determinism guarantees. addition (for sums) and multiplication (for products). On the language side, DOMP is based on the well- If DOMP offered a generalized reduction for arbitrary known OpenMP specification [10, 22], a set of anno- types, including those accessible only by indirection, tations and function calls that can be added to legacy and for user-defined binary operations, then, we be- serial code in languages such as C, C++, or For- lieve, programmers would be able to avoid many in- tran, enabling the programmer to parallelize it con- stances of unsafe, low-level synchronization abstrac- veniently and incrementally. OpenMP offers a range tions. of constructs sufficiently broad to provide reasonable A generalized, deterministic reduction construct expressiveness in parallelizing code. comes with its own new questions and challenges, On the systems side, DOMP draws from the ideas however, which the rest of this paper considers. Are of Workspace Consistency and working-copies de- there any constraints at all that DOMP must place terminism [4], a memory and programming model upon the user-defined operations that a reduction can that eliminates race conditions by handling shared support? What should the API look like and what data, roughly speaking, as versioning systems han- are possible tradeoffs in its semantics? What should 1 the fixed evaluation order be? How might it be im- locks and condition variables, relying instead on de- plemented efficiently so as to take advantage of par- terministic abstractions such as fork, join, and bar- allelism while safeguarding determinism? What sort rier. The execution environment then enforces race of threading model is best suited for this purpose? freedom by providing each concurrent thread with its What are the other major implementation challenges own private logical copy of shared state at the fork, and how might we address them? and merging the changes written by these threads Section 2 reviews the background to these ques- into the emerging parent thread at join or barrier, tions, and related work, in greater detail; Section 3 checking for conflicting writes in the process and considers design-related challenges, such as the def- treating any such conflicts as errors. While the Deter- inition of the API; Section 4 does the same with minator project demonstrated the efficient implemen- implementation challenges; Section 5 reports on the tation of working-copies determinism, the program- project's current state; and Section 6 concludes. ming model, constrained to this small set of synchro- nization abstractions, suffered from a lack of expres- siveness and flexibility. 2 Background A deterministic version of OpenMP may remedy this shortcoming. The OpenMP standard defines a Research has established the desirability of achieving set of constructs, optional clauses, and routines that deterministic parallelism at a reasonable cost to per- a programmer can add to a program written in a formance [5, 11, 21]. Various teams have proposed legacy language such as C, C++, or Fortran, in or- distinct solution approaches, of which Deterministic der to parallelize it easily and incrementally. The OpenMP [3] is a recent one whose motivation we re- constructs annotate structured blocks. The fork-join view here. We then take up the importance of reduc- synchronization pattern and the orientation toward tions in general and within DOMP in particular. structured blocks make for a convenient fit between working-copies determinism and OpenMP. For a de- terministic version truly compatible with working- 2.1 Deterministic OpenMP copies determinism, we must exclude the relatively Among the earliest efforts to provide deterministic few naturally nondeterministic constructs, such as parallelism, language-based approaches are promis- atomic, critical, and flush, and provide an imple- ing, but may apply only to special purposes, or may mentation that applies working-copies semantics to entail new and unfamiliar concepts, requiring exten- the remaining features. This is the Deterministic sive rewriting of legacy code [1, 2, 6, 12, 17, 19, 23, 24]. OpenMP (DOMP) project [3]. In order to support legacy code, other teams have de- While DOMP promises greater expressiveness and veloped deterministic replay systems, but these are ease of adaptation of legacy code for working- generally more practical for development and debug- copies determinism, its exclusion of nondeterminis- ging than for production systems [14, 16, 20, 25]. tic OpenMP features might seem to limit its use- Deterministic scheduling systems also support legacy fulness in adapting real-world code. The research code [7, 8, 9, 15], but only allow race conditions to be supporting DOMP, however, suggests that many in- reproduced (and perhaps silently executed) without stances of naturally nondeterministic synchronization eliminating them [3, 4, 5]. abstractions actually arise from the need to imple- Working-copies determinism also supports legacy ment higher-level idioms that are, themselves, nat- code in languages such as C, but it eliminates race urally deterministic in principle, but for which the conditions by catching them and treating them as available language constructs do not offer direct sup- runtime errors. Working-copies determinism is based port. With two such features, generalized reductions on the Workspace Consistency memory model [4], and pipelines, most uses of nondeterministic OpenMP and underlies the design of the Determinator op- constructs can be eliminated. The first of these is the erating system [5]. Workspace consistency requires concern of this paper. that the programming language, implementation, and runtime system all remain naturally determin- 2.2 Generalized Reductions istic, meaning that interprocess or inter-thread syn- chronization events must occur in a manner that the A reduction, also called a fold in functional program- program alone specifies, wholly immune to the sched- ming, is a kind of higher-order operation whose spe- uler or any hardware timing effects. Accordingly, cial features make it a potentially useful language a compatible program eschews such naturally non- construct for deterministic parallelism. Given a data deterministic synchronization abstractions as mutex structure, such as a list z whose elements have type T 2 and a binary \combining" function f :(T × T ) ! T , &, |, &&, ||, ^. (The operator - counts as com- a reduction r :(f × [T ]) ! T applies f recursively to mutative because the initial value for the reduction the elements of z, first to the first pair, and then to is 0; the initial value given in the program is added the result and the next element, etc., to arrive at the at the end.) These
Recommended publications
  • Philosophy of Science and Philosophy of Chemistry
    Philosophy of Science and Philosophy of Chemistry Jaap van Brakel Abstract: In this paper I assess the relation between philosophy of chemistry and (general) philosophy of science, focusing on those themes in the philoso- phy of chemistry that may bring about major revisions or extensions of cur- rent philosophy of science. Three themes can claim to make a unique contri- bution to philosophy of science: first, the variety of materials in the (natural and artificial) world; second, extending the world by making new stuff; and, third, specific features of the relations between chemistry and physics. Keywords : philosophy of science, philosophy of chemistry, interdiscourse relations, making stuff, variety of substances . 1. Introduction Chemistry is unique and distinguishes itself from all other sciences, with respect to three broad issues: • A (variety of) stuff perspective, requiring conceptual analysis of the notion of stuff or material (Sections 4 and 5). • A making stuff perspective: the transformation of stuff by chemical reaction or phase transition (Section 6). • The pivotal role of the relations between chemistry and physics in connection with the question how everything fits together (Section 7). All themes in the philosophy of chemistry can be classified in one of these three clusters or make contributions to general philosophy of science that, as yet , are not particularly different from similar contributions from other sci- ences (Section 3). I do not exclude the possibility of there being more than three clusters of philosophical issues unique to philosophy of chemistry, but I am not aware of any as yet. Moreover, highlighting the issues discussed in Sections 5-7 does not mean that issues reviewed in Section 3 are less im- portant in revising the philosophy of science.
    [Show full text]
  • Aristotle's Anticommunism Author(S): Darrell Dobbs Source: American Journal of Political Science, Vol
    Aristotle's Anticommunism Author(s): Darrell Dobbs Source: American Journal of Political Science, Vol. 29, No. 1 (Feb., 1985), pp. 29-46 Published by: Midwest Political Science Association Stable URL: http://www.jstor.org/stable/2111210 Accessed: 10/12/2010 23:50 Your use of the JSTOR archive indicates your acceptance of JSTOR's Terms and Conditions of Use, available at http://www.jstor.org/page/info/about/policies/terms.jsp. JSTOR's Terms and Conditions of Use provides, in part, that unless you have obtained prior permission, you may not download an entire issue of a journal or multiple copies of articles, and you may use content in the JSTOR archive only for your personal, non-commercial use. Please contact the publisher regarding any further use of this work. Publisher contact information may be obtained at http://www.jstor.org/action/showPublisher?publisherCode=mpsa. Each copy of any part of a JSTOR transmission must contain the same copyright notice that appears on the screen or printed page of such transmission. JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range of content in a trusted digital archive. We use information technology and tools to increase productivity and facilitate new forms of scholarship. For more information about JSTOR, please contact [email protected]. Midwest Political Science Association is collaborating with JSTOR to digitize, preserve and extend access to American Journal of Political Science. http://www.jstor.org Aristotle'sAnticommunism DarrellDobbs, Universityof Houston This essayexamines Aristotle's critical review of Plato's Republic,the focus of whichreview is restricted,surprisingly, to Socrates'communistic political institutions; Aristotle hardly men- tionsany of theother important themes developed in thedialogue.
    [Show full text]
  • Introduction: the New Metaphysics of Time Over the Last Several Years
    History and Theory, Virtual Issue 1 (August 2012) © Wesleyan University 2012 ISSN: 1468-2303 INTRODUCTION: THE NEW METAPHYSICS OF TIME ETHAN KLEINBERG Over the last several years, the editors of History and Theory have tracked a growing trend evident not only in the articles published in our pages but also in manuscripts submitted to the journal as well as articles published in other venues. In the broadest strokes, this trend can be described as a response to the perceived limitations of a discourse predicated on language, rhetoric, and the question of representation. Whether one subscribes to the idea that historians and theorists of history took a “linguistic turn” in the 1980s,1 an increasing number of articles and monographs have taken issue with the general influence of French “post- structuralism” or “postmodernism,” with constructivism, and specifically with the work of Hayden White. These works seek to address the perceived faults of an overemphasis on the issues of “language” and representation that has obscured or misdirected the goal of actually addressing the past by perpetually worrying over how we might go about that task. Combined with the growing interest in material culture, the ways of science, and the nature of the body, it is hard to doubt the return to the real. But what strikes us as most interesting about this trend is the way that some of these theorists have sought to move beyond the emphasis on language and representation not by returning to a crude variant of objectivism or empiricism but by re-examining our relationship to the past and the past’s very nature and by attempting to construct a new metaphysics of time.
    [Show full text]
  • Kant's Doctrine of Schemata
    Kant’s Doctrine of Schemata By Joseph L. Hunter Thesis submitted to the faculty of Virginia Polytechnic Institute and State University in partial fulfillment of the requirements for the degree of MASTERS OF ARTS IN PHILOSOPHY APPROVED: _______________________________ Eric Watkins, Chair _______________________________ _______________________________ Roger Ariew Joseph C. Pitt August 25, 1999 Blacksburg, Virginia Keywords: Kant, Schemata, Experience, Knowledge, Categories, Construction, Mathematics. i Kant’s Doctrine of Shemata Joseph L. Hunter (ABSTRACT) The following is a study of what may be the most puzzling and yet, at the same time, most significant aspect of Kant’s system: his theory of schemata. I will argue that Kant’s commentators have failed to make sense of this aspect of Kant’s philosophy. A host of questions have been left unanswered, and the doctrine remains a puzzle. While this study is not an attempt to construct a complete, satisfying account of the doctrine, it should be seen as a step somewhere on the road of doing so, leaving much work to be done. I will contend that one way that we may shed light on Kant’s doctrine of schemata is to reconsider the manner in which Kant employs schemata in his mathematics. His use of the schemata there may provide some inkling into the nature of transcendental schemata and, in doing so, provide some hints at how the transcendental schemata allow our representations of objects to be subsumed under the pure concepts of the understanding. In many ways, then, the aims of the study are modest: instead of a grand- scale interpretation of Kant's philosophy, a detailed textual analysis and interpretation are presented of his doctrine of schemata.
    [Show full text]
  • Peirce, Pragmatism, and the Right Way of Thinking
    SANDIA REPORT SAND2011-5583 Unlimited Release Printed August 2011 Peirce, Pragmatism, and The Right Way of Thinking Philip L. Campbell Prepared by Sandia National Laboratories Albuquerque, New Mexico 87185 and Livermore, California 94550 Sandia National Laboratories is a multi-program laboratory managed and operated by Sandia Corporation, a wholly owned subsidiary of Lockheed Martin Corporation, for the U.S. Department of Energy’s National Nuclear Security Administration under Contract DE-AC04-94AL85000.. Approved for public release; further dissemination unlimited. Issued by Sandia National Laboratories, operated for the United States Department of Energy by Sandia Corporation. NOTICE: This report was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government, nor any agency thereof, nor any of their employees, nor any of their contractors, subcontractors, or their employees, make any warranty, express or implied, or assume any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represent that its use would not infringe privately owned rights. Reference herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise, does not necessarily con- stitute or imply its endorsement, recommendation, or favoring by the United States Government, any agency thereof, or any of their contractors or subcontractors. The views and opinions expressed herein do not necessarily state or reflect those of the United States Government, any agency thereof, or any of their contractors. Printed in the United States of America. This report has been reproduced directly from the best available copy.
    [Show full text]
  • 5. Immanuel Kant and Critical Idealism Robert L
    Contemporary Civilization (Ideas and Institutions Section XII: The osP t-Enlightenment Period of Western Man) 1958 5. Immanuel Kant and Critical Idealism Robert L. Bloom Gettysburg College Basil L. Crapster Gettysburg College Harold A. Dunkelberger Gettysburg College See next page for additional authors Follow this and additional works at: https://cupola.gettysburg.edu/contemporary_sec12 Part of the European Languages and Societies Commons, History Commons, and the Philosophy Commons Share feedback about the accessibility of this item. Bloom, Robert L. et al. "5. Immanuel Kant and Critical Idealism. Pt XII: The osP t-Enlightenment Period." Ideas and Institutions of Western Man (Gettysburg College, 1958), 53-69. This is the publisher's version of the work. This publication appears in Gettysburg College's institutional repository by permission of the copyright owner for personal use, not for redistribution. Cupola permanent link: https://cupola.gettysburg.edu/ contemporary_sec12/5 This open access book chapter is brought to you by The uC pola: Scholarship at Gettysburg College. It has been accepted for inclusion by an authorized administrator of The uC pola. For more information, please contact [email protected]. 5. Immanuel Kant and Critical Idealism Abstract The ideas of Immanuel Kant (1724-1804) are significant enough to be compared to a watershed in Western thought. In his mind were gathered up the major interests of the Enlightenment: science, epistemology, and ethics; and all of these were given a new direction which he himself described as another Copernican revolution. As Copernicus had shown that the earth revolved around the sun, rather than the sun around the earth, so Kant showed that the knowing subject played an active and creative role in the production of his world picture, rather than the static and passive role which the early Enlightenment had assigned him.
    [Show full text]
  • Causality in the Mind: Estimating Contextual and Conjunctive Power
    This excerpt from Explanation and Cognition. Frank C. Keil and Robert A. Wilson, editors. © 2000 The MIT Press. is provided in screen-viewable form for personal use only by members of MIT CogNet. Unauthorized use or dissemination of this information is expressly forbidden. If you have any questions about this material, please contact [email protected]. 9 Causality in the Mind: Estimating Contextual and Conjunctive Causal Power Patricia W. Cheng I would like to argue that humans, and perhaps all species capable of flex- ibly adaptive goal-directed actions, are born with a conviction that they use for inferring cause-and-effect relations in the world.This conviction— that entities and events may have causal powers with respect to other enti- ties or events—provides a simple framework that enables reasoners to incrementally construct a picture of causal relations in a complex world. In the reasoner’s mind, causal powers are invariant properties of relations that allow the prediction of the consequences of actions regardless of the context in which the action occurs, with “context” being the background causes of an effect (those other than the candidate causes) that happen to occur in a situation. The reasoner’s goal is to infer these powers. The causal power scheme, however, is coherent only if the inferred powers can be tested in contexts other than the one in which they are inferred. When predictions based on simple causal powers fail, reasoners may be motivated to evaluate conjunctive causal power. All conventional statistical measures of independence, none of which is based on a causal power analysis, contradict measures of conjunctive causal power (Novick and Cheng 1999).
    [Show full text]
  • PHIL 3302: Philosophy of Aristotle (3 Credits)
    Date prepared: 8/17/14 The University of New Orleans Dept. of Philosophy PHIL 3302: Philosophy of Aristotle (3 credits) SECTION 001: LA 194, Thursday, 4:30 p.m – 7:15 p.m. Instructor: Dr. Surprenant Office: UNO: LA 387 Office Hours: (office) M: 11-12pm, Th: 1-4pm (and by appointment) (Skype, csurprenant) Tues: 12-2pm (and by appointment) Office Phone: (504) 280-6818 Contact Contact Information Email: [email protected] Course Webpages: Accessed via Moodle. Aristotle: Nicomachean Ethics, ed. Crisp (Cambridge, 2000). ISBN: 0521635462 Aristotle: The Politics and Constitution of Athens, ed. Everson (Oxford, 1996). ISBN: 0521484006 Text Required Required CATALOG DESCRIPTION: Aristotle's ideas are examined through careful analysis of his main works with emphasis on his criticisms of the basic theories of his teacher, Plato, and Aristotle's influence on subsequent Western Philosophy, literature, and science. COURSE OVERVIEW: This course is an advanced study of Aristotle’s moral and political philosophy. We will examine Aristotle’s answers to such questions as: May the state legitimately use the law to impose a certain conception of morality on its citizens? Or must the state aim, rather, to remain neutral when its citizens disagree strongly about the best way of life, protecting its citizens’ freedom to choose their own visions of the good life? A primary focus throughout the entire semester will be on learning how to read, understand, Course Description Course evaluate, and construct philosophical arguments, and then engaging with contemporary scholars about these arguments and ideas. In this way, this course will also serve as an introduction to being a philosopher.
    [Show full text]
  • Criminal Responsibility and Causal Determinism J
    Washington University Jurisprudence Review Volume 9 | Issue 1 2016 Criminal Responsibility and Causal Determinism J. G. Moore Follow this and additional works at: https://openscholarship.wustl.edu/law_jurisprudence Part of the Criminal Law Commons, Jurisprudence Commons, Legal History Commons, Legal Theory Commons, Philosophy Commons, and the Rule of Law Commons This document is a corrected version of the article originally published in print. To access the original version, follow the link in the Recommended Citation then download the file listed under “Previous Versions." Recommended Citation J. G. Moore, Criminal Responsibility and Causal Determinism, 9 Wash. U. Jur. Rev. 043 (2016, corrected 2016). Available at: http://openscholarship.wustl.edu/law_jurisprudence/vol9/iss1/6 This Article is brought to you for free and open access by the Law School at Washington University Open Scholarship. It has been accepted for inclusion in Washington University Jurisprudence Review by an authorized administrator of Washington University Open Scholarship. For more information, please contact [email protected]. Criminal Responsibility and Causal Determinism Cover Page Footnote This document is a corrected version of the article originally published in print. To access the original version, follow the link in the Recommended Citation then download the file listed under “Previous Versions." This article is available in Washington University Jurisprudence Review: https://openscholarship.wustl.edu/law_jurisprudence/vol9/ iss1/6 CRIMINAL RESPONSIBILITY AND CAUSAL DETERMINISM: CORRECTED VERSION J G MOORE* INTRODUCTION In analytical jurisprudence, determinism has long been seen as a threat to free will, and free will has been considered necessary for criminal responsibility.1 Accordingly, Oliver Wendell Holmes held that if an offender were hereditarily or environmentally determined to offend, then her free will would be reduced, and her responsibility for criminal acts would be correspondingly diminished.2 In this respect, Holmes followed his father, Dr.
    [Show full text]
  • Additionality: a Useful Way to Construct the Counterfactual Qualitatively?
    REFEREED ARTICLE Evaluation Journal of Australasia, Vol. 10, No. 1, 2010, pp. 28–35 Additionality: a useful way to construct the counterfactual qualitatively? Abstract Julie Hind One concern about impact evaluation is whether a program has made a difference (Owen 2006). Essentially, in trying to understand this, an evaluation seeks to establish causality—the causal link between the social program and the outcomes (Mohr 1999; Rossi & Freeman 1993). However, attributing causality to social programs is difficult because of the inherent complexity and the many and varied factors at play (House 2001; Mayne 2001; Pawson & Tilley 1998; White 2010). Evaluators can choose from a number of theories and methods to help address causality (Davidson 2000). Measuring the counterfactual—the difference between actual outcomes and what would have occurred without Julie Hind is Director of Evolving the intervention—has been at the heart of traditional Ways, Albury–Wodonga. Email: impact evaluations. While this has traditionally been <[email protected]> measured using experimental and quasi-experimental methods, a counterfactual does not always need a This article was written towards comparison group (White 2010) and can be constructed completion of a Master of Assessment qualitatively (Cummings 2006). and Evaluation degree at the With these in mind, this article explores the usefulness of University of Melbourne. the concept of additionality, a mixed-methods framework developed by Buisseret et al. (cited in Georghiou 2002) as a means of evaluative comparison of the counterfactual. Introduction Over recent decades, there has been a move away from an emphasis on procedural matters within government agencies towards a focus on achievements (Mayne 2001).
    [Show full text]
  • Learning a Theory of Causality
    Learning a Theory of Causality Noah D. Goodman, Tomer D. Ullman, Joshua B. Tenenbaum ndg, tomeru, jbt @mit.edu MIT, Dept.f of Brain and Cognitiveg Sciences The very early appearance of abstract knowledge is often taken as evidence for innateness. We explore the relative learning speeds of abstract and specific knowledge within a Bayesian framework, and the role for innate structure. We focus on knowledge about causality, seen as a domain-general intuitive theory, and ask whether this knowledge can be learned from co- occurrence of events. We begin by phrasing the causal Bayes nets theory of causality, and a range of alternatives, in a logical language for relational theories. This allows us to explore simultaneous inductive learning of an abstract theory of causality and a causal model for each of several causal systems. We find that the correct theory of causality can be learned relatively quickly, often becoming available before specific causal theories have been learned—an effect we term the blessing of abstraction. We then explore the effect of providing a variety of auxiliary evidence, and find that a collection of simple “perceptual input analyzers” can help to bootstrap abstract knowledge. Together these results suggest that the most efficient route to causal knowledge may be to build in not an abstract notion of causality, but a powerful inductive learning mechanism and a variety of perceptual supports. While these results are purely computational, they have implications for cognitive development, which we explore in the conclusion. Pre-print June 2010—to appear in Psych. Review. essary building block in models of cognitive development or because it was not clear how such abstract knowledge could Introduction be learned.
    [Show full text]
  • Elements of Causal Inference
    Elements of Causal Inference Foundations and Learning Algorithms Adaptive Computation and Machine Learning Francis Bach, Editor Christopher Bishop, David Heckerman, Michael Jordan, and Michael Kearns, As- sociate Editors A complete list of books published in The Adaptive Computation and Machine Learning series appears at the back of this book. Elements of Causal Inference Foundations and Learning Algorithms Jonas Peters, Dominik Janzing, and Bernhard Scholkopf¨ The MIT Press Cambridge, Massachusetts London, England c 2017 Massachusetts Institute of Technology This work is licensed to the public under a Creative Commons Attribution- Non- Commercial-NoDerivatives 4.0 license (international): http://creativecommons.org/licenses/by-nc-nd/4.0/ All rights reserved except as licensed pursuant to the Creative Commons license identified above. Any reproduction or other use not licensed as above, by any electronic or mechanical means (including but not limited to photocopying, public distribution, online display, and digital information storage and retrieval) requires permission in writing from the publisher. This book was set in LaTeX by the authors. Printed and bound in the United States of America. Library of Congress Cataloging-in-Publication Data Names: Peters, Jonas. j Janzing, Dominik. j Scholkopf,¨ Bernhard. Title: Elements of causal inference : foundations and learning algorithms / Jonas Peters, Dominik Janzing, and Bernhard Scholkopf.¨ Description: Cambridge, MA : MIT Press, 2017. j Series: Adaptive computation and machine learning series
    [Show full text]