Abstract
Recursive calls over recursive data are useful for generating probability distributions, and probabilistic programming allows computations over these distributions to be expressed in a modular and intuitive way. Exact inference is also useful, but unfortunately, existing probabilistic programming languages do not perform exact inference on recursive calls over recursive data, forcing programmers to code many applications manually. We introduce a probabilistic language in which a wide variety of recursion can be expressed naturally, and inference carried out exactly. For instance, probabilistic pushdown automata and their generalizations are easy to express, and polynomial-time parsing algorithms for them are derived automatically. We eliminate recursive data types using program transformations related to defunctionalization and refunctionalization. These transformations are assured correct by a linear type system, and a successful choice of transformations, if there is one, is guaranteed to be found by a greedy algorithm.
Supplemental Material
Available for Download
This archive contains the appendices for the paper: David Chiang, Colin McDonald, and Chung-chieh Shan. 2023. Exact Recursive Probabilistic Programming. Proc. ACM Program. Lang. 7, OOPSLA1, Article 98 (April 2023), 31 pages. https://doi.org/10.1145/3586050.
- Samson Abramsky. 1993. Computational Interpretations of Linear Logic. Theoretical Computer Science, 111, 1–2 (1993), 3–57. https://doi.org/10.1016/0304-3975(93)90181-R
Google Scholar
Digital Library
- Miguel A. Alonso, Éric Villemonte de la Clergerie, and Manuel Vilares. 2000. A redefinition of Embedded Push-Down Automata. In Proc. International Workshop on Tree Adjoining Grammar and Related Frameworks (TAG+5). 19–26. https://aclanthology.org/W00-2002
Google Scholar
- Eric Atkinson, Charles Yuan, Guillaume Baudart, Louis Mandel, and Michael Carbin. 2022. Semi-Symbolic Inference for Efficient Streaming Probabilistic Programming. PACM on Programming Languages, 6, OOPSLA2 (2022), Article 184, 29 pages. https://doi.org/10.1145/3563347
Google Scholar
Digital Library
- Robert J. Aumann. 1961. Borel Structures for Function Spaces. Illinois Journal of Mathematics, 5, 4 (1961), 614–630. https://doi.org/10.1215/ijm/1255631584
Google Scholar
Cross Ref
- R. I[ris] Bahar, E[rica] A. Frohm, C[harles] M. Gaona, G[ary] D. Hachtel, E[nrico] Macii, A[belardo] Pardo, and F[abio] Somenzi. 1997. Algebraic Decision Diagrams and Their Applications. Formal Methods in System Design, 10 (1997), 171–206. https://doi.org/10.1023/A:1008699807402
Google Scholar
Digital Library
- Anindya Banerjee, Nevin Heintze, and Jon G. Riecke. 2001. Design and Correctness of Program Transformations Based on Control-Flow Analysis. In Theoretical Aspects of Computer Software: TACS 2001 (LNCS, 2215). Springer, 420–447. https://doi.org/10.1007/3-540-45500-0_21
Google Scholar
Cross Ref
- Andrew Barber. 1996. Dual Intuitionistic Linear Logic. Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh. https://www.lfcs.inf.ed.ac.uk/reports/96/ECS-LFCS-96-347/
Google Scholar
- Ezio Bartocci, Laura Kovács, and Miroslav Stankovič. 2019. Automatic Generation of Moment-Based Invariants for Prob-Solvable Loops. In Automated Technology for Verification and Analysis: ATVA 2019 (LNCS, Vol. 11781). Springer, 255–276. https://doi.org/10.1007/978-3-030-31784-3_15
Google Scholar
Digital Library
- Michel Bauderon and Bruno Courcelle. 1987. Graph Expressions and Graph Rewritings. Mathematical Systems Theory, 20 (1987), 83–127. https://doi.org/10.1007/BF01692060
Google Scholar
Cross Ref
- Taylor L. Booth and Richard A. Thompson. 1973. Applying Probability Measures to Abstract Languages. IEEE Trans. Comput., C-22, 5 (1973), 442–450. https://doi.org/10.1109/T-C.1973.223746
Google Scholar
Digital Library
- Johannes Borgström, Andrew D. Gordon, Michael Greenberg, James Margetson, and Jurgen Van Gael. 2011. Measure Transformer Semantics for Bayesian Machine Learning. In Programming Languages and Systems: ESOP 2011 (LNCS, Vol. 6602). Springer, 77–96. https://doi.org/10.1007/978-3-642-19718-5_5
Google Scholar
Cross Ref
- Olivier Bouissou, Eric Goubault, Sylvie Putot, Aleksandar Chakarov, and Sriram Sankaranarayanan. 2016. Uncertainty Propagation Using Probabilistic Affine Forms and Concentration of Measure Inequalities. In Tools and Algorithms for the Construction and Analysis of Systems: TACAS 2016 (LNCS, Vol. 9636). Springer, 225–243. https://doi.org/10.1007/978-3-662-49674-9_13
Google Scholar
Digital Library
- Randal E. Bryant. 1986. Graph-Based Algorithms for Boolean Function Manipulation. IEEE Trans. Comput., C-35, 8 (1986), 677–691. https://doi.org/10.1109/TC.1986.1676819
Google Scholar
Digital Library
- Wray L. Buntine. 1994. Operations for Learning with Graphical Models. J. Artificial Intelligence Research, 2 (1994), 159–225.
Google Scholar
Digital Library
- Alexandra Butoi, Brian DuSell, Tim Vieira, Ryan Cotterell, and David Chiang. 2022. Algorithms for Weighted Pushdown Automata. In Proc. EMNLP. https://aclanthology.org/2022.emnlp-main.656
Google Scholar
- Shu Cai, David Chiang, and Yoav Goldberg. 2011. Language-Independent Parsing with Empty Elements. In Proc. NAACL HLT. 212–216. https://aclanthology.org/P11-2037
Google Scholar
- Ashok K. Chandra and Philip M. Merlin. 1977. Optimal Implementation of Conjunctive Queries in Relational Data Bases. In Proc. STOC. 77–90. https://doi.org/10.1145/800105.803397
Google Scholar
Digital Library
- Stanley F. Chen and Joshua Goodman. 1999. An empirical study of smoothing techniques for language modeling. Computer Speech & Language, 13, 4 (1999), 359–394. issn:0885-2308 https://doi.org/10.1006/csla.1999.0128
Google Scholar
Digital Library
- David Chiang and Darcey Riley. 2020. Factor Graph Grammars. In Proc. NeurIPS. 6648–6658. https://proceedings.neurips.cc/paper/2020/hash/49ca03822497d26a3943d5084ed59130-Abstract.html
Google Scholar
- Guillaume Claret, Sriram K. Rajamani, Aditya V. Nori, Andrew D. Gordon, and Johannes Borgström. 2013. Bayesian Inference Using Data Flow Analysis. In Proc. ESEC/FSE 2013. 92–102. https://doi.org/10.1145/2491411.2491423
Google Scholar
Digital Library
- Michael Collins. 1999. Head-Driven Statistical Models for Natural Language Parsing. Ph. D. Dissertation. University of Pennsylvania.
Google Scholar
- Gregory F. Cooper. 1990. The Computational Complexity of Probabilistic Inference Using Bayesian Belief Networks. Artificial Intelligence, 42, 2 (1990), 393–405. https://doi.org/10.1016/0004-3702(90)90060-D
Google Scholar
Digital Library
- Olivier Danvy and Andrzej Filinski. 1990. Abstracting Control. In Proc. ACM Conference on Lisp and Functional Programming (LFP). 151–160. https://doi.org/10.1145/91556.91622
Google Scholar
Digital Library
- Olivier Danvy and Kevin Millikin. 2009. Refunctionalization at Work. Science of Computer Programming, 74, 8 (2009), 534–549. https://doi.org/10.1016/j.scico.2007.10.007
Google Scholar
Digital Library
- Olivier Danvy and Lasse R. Nielsen. 2001. Defunctionalization at Work. In Proc. 3rd International Conference on Principles and Practice of Declarative Programming. 162–174. https://doi.org/10.1145/773184.773202
Google Scholar
Digital Library
- Frank Drewes, Hans-Jörg Kreowski, and Annegret Habel. 1997. Hyperedge Replacement Graph Grammars. In Handbook of Graph Grammars and Computing by Graph Transformation, Grzegorz Rozenberg (Ed.). World Scientific, 95–162. https://doi.org/10.1142/9789812384720_0002
Google Scholar
Cross Ref
- Thomas Ehrhard, Michele Pagani, and Christine Tasson. 2018. Full Abstraction for Probabilistic PCF. J. ACM, 65, 4 (2018), Article 23, 44 pages. https://doi.org/10.1145/3164540
Google Scholar
Digital Library
- Thomas Ehrhard and Christine Tasson. 2019. Probabilistic Call by Push Value. Logical Methods in Computer Science, 15, 1 (2019), Article 3, 46 pages. https://doi.org/10.23638/LMCS-15(1:3)2019
Google Scholar
Cross Ref
- Javier Esparza, Stefan Kiefer, and Michael Luttenberger. 2007. On Fixed Point Equations over Commutative Semirings. In Proc. STACS. 296–307. https://doi.org/10.1007/978-3-540-70918-3_26
Google Scholar
Cross Ref
- Javier Esparza, Stefan Kiefer, and Michael Luttenberger. 2008. Solving Monotone Polynomial Equations. In Proc. IFIP International Conference on Theoretical Computer Science (TCS). 285–298. https://doi.org/10.1007/978-0-387-09680-3_20 Invited paper
Google Scholar
Cross Ref
- Javier Esparza, Stefan Kiefer, and Michael Luttenberger. 2010. Newtonian Program Analysis. J. ACM, 57, 6 (2010), Article 33, 47 pages. https://doi.org/10.1145/1857914.1857917
Google Scholar
Digital Library
- Kousha Etessami and Mihalis Yannakakis. 2009. Recursive Markov Chains, Stochastic Grammars, and Monotone Systems of Nonlinear Equations. J. ACM, 56, 1 (2009), Article 1, Feb., 66 pages. https://doi.org/10.1145/1462153.1462154
Google Scholar
Digital Library
- Jenny Rose Finkel, Alex Kleeman, and Christopher D. Manning. 2008. Efficient, Feature-based, Conditional Random Field Parsing. In Proc. ACL: HLT. 959–967. https://aclanthology.org/P08-1109
Google Scholar
- Timon Gehr, Sasa Misailovic, and Martin Vechev. 2016. PSI: Exact Symbolic Inference for Probabilistic Programs. In Computer Aided Verification: CAV 2016 (LNCS, Vol. 9779). 62–83. https://doi.org/10.1007/978-3-319-41528-4_4
Google Scholar
Cross Ref
- Timon Gehr, Samuel Steffen, and Martin Vechev. 2020. λ PSI: Exact Inference for Higher-Order Probabilistic Programs. In Proc. PLDI. 883–897. https://doi.org/10.1145/3385412.3386006
Google Scholar
Digital Library
- Jean-Yves Girard. 1987. Linear Logic. Theoretical Computer Science, 50 (1987), 1–101. https://doi.org/10.1016/0304-3975(87)90045-4
Google Scholar
Digital Library
- Jean-Yves Girard. 1991. A New Constructive Logic: Classic Logic. Mathematical Structures in Computer Science, 1, 3 (1991), 255–296. https://doi.org/10.1017/S0960129500001328
Google Scholar
Cross Ref
- Noah D. Goodman and Andreas Stuhlmüller. 2014. The Design and Implementation of Probabilistic Programming Languages. http://dippl.org
Google Scholar
- Alex Graves, Santiago Fernández, and Faustino Gomez. 2006. Connectionist Temporal Classification: Labelling Unsegmented Sequence Data with Recurrent Neural Networks. In Proc. ICML. 369–376.
Google Scholar
Digital Library
- Annegret Habel and Hans-Jörg Kreowski. 1987. May we introduce to you: Hyperedge replacement. In Graph Grammars and Their Application to Computer Science: Graph Grammars 1986 (LNCS, Vol. 291). Springer, 15–26. https://doi.org/10.1007/3-540-18771-5_41
Google Scholar
Cross Ref
- Chris Heunen, Ohad Kammar, Sam Staton, and Hongseok Yang. 2017. A Convenient Category for Higher-Order Probability Theory. In Proc. LICS. 1–12. https://dl.acm.org/doi/10.5555/3329995.3330072
Google Scholar
Cross Ref
- Steven Holtzen, Guy Van den Broeck, and Todd Millstein. 2020. Scaling Exact Inference for Discrete Probabilistic Programs. PACM on Programming Languages, 4, OOPSLA (2020), Article 140, 31 pages. https://doi.org/10.1145/3428208
Google Scholar
Digital Library
- Zhiheng Huang, Wei Xu, and Kai Yu. 2015. Bidirectional LSTM-CRF Models for Sequence Tagging. arxiv:1508.01991 arXiv:1508.01991v1
Google Scholar
- Daphne Koller and Nir Friedman. 2009. Probabilistic Graphical Models: Principles and Techniques. MIT Press.
Google Scholar
Digital Library
- Daphne Koller, David McAllester, and Avi Pfeffer. 1997. Effective Bayesian Inference for Stochastic Programs. In Proc. AAAI. 740–747. https://www.aaai.org/Library/AAAI/1997/aaai97-115.php
Google Scholar
- Dexter Kozen. 1981. Semantics of Probabilistic Programs. J. Comput. System Sci., 22, 3 (1981), 328–350. https://doi.org/10.1016/0022-0000(81)90036-2
Google Scholar
Cross Ref
- Frank R. Kschischang, Brendan J. Frey, and Hans-Andrea Loeliger. 2001. Factor Graphs and the Sum-Product Algorithm. IEEE Trans. Information Theory, 47, 2 (2001), 498–519. https://doi.org/10.1109/18.910572
Google Scholar
Digital Library
- Marta Z. Kwiatkowska, Gethin Norman, and David Parker. 2011. PRISM 4.0: Verification of Probabilistic Real-Time Systems. In Computer Aided Verification (CAV) (LNCS, Vol. 6806). Springer, 585–591. https://doi.org/10.1007/978-3-642-22110-1_47
Google Scholar
Cross Ref
- John D. Lafferty, Andrew McCallum, and Fernando C. N. Pereira. 2001. Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data. In Proc. ICML. 282–289.
Google Scholar
Digital Library
- James Laird. 2020. Weighted Models for Higher-Order Computation. Information and Computation, 275 (2020), Article 104645, 34 pages. https://doi.org/10.1016/j.ic.2020.104645
Google Scholar
Cross Ref
- Jim Laird, Giulio Manzonetto, Guy McCusker, and Michele Pagani. 2013. Weighted Relational Models of Typed Lambda-Calculi. In Proc. LICS. 301–310. https://doi.org/10.1109/LICS.2013.36
Google Scholar
Digital Library
- Bernard Lang. 1974. Deterministic Techniques for Efficient Non-Deterministic Parsers. In Proc. Colloquium on Automata, Languages, and Programming. 255–269. https://doi.org/10.1007/978-3-662-21545-6_18
Google Scholar
Cross Ref
- Bernard Lang. 1994. Recognition Can Be Harder Than Parsing. Computational Intelligence, 10, 4 (1994), 486–494. https://doi.org/10.1111/j.1467-8640.1994.tb00011.x
Google Scholar
Cross Ref
- Daniel J. Lehmann. 1977. Algebraic Structures for Transitive Closure. Theoretical Computer Science, 4, 1 (1977), 59–76. https://doi.org/10.1016/0304-3975(77)90056-1
Google Scholar
Cross Ref
- Jonathan May and Kevin Knight. 2006. Tiburon: A Weighted Tree Automata Toolkit. In Proc. Conference on Implementation and Application of Automata (CIAA). 102–113. https://doi.org/10.1007/11812128_11
Google Scholar
Digital Library
- David McAllester, Michael Collins, and Fernando Pereira. 2008. Case-Factor Diagrams for Structured Probabilistic Modeling. J. Comput. System Sci., 74, 1 (2008), 84–96. https://doi.org/10.1016/j.jcss.2007.04.015
Google Scholar
Digital Library
- Tom Minka and John Winn. 2008. Gates. In Proc. NeurIPS. 1073–1080. https://papers.nips.cc/paper/3379-gates
Google Scholar
- Mehryar Mohri. 1997. Finite-State Transducers in Language and Speech Processing. Computational Linguistics, 23, 2 (1997), 269–311. https://aclanthology.org/J97-2003
Google Scholar
Digital Library
- Marcel Moosbrugger, Miroslav Stankovič, Ezio Bartocci, and Laura Kovács. 2022. This is the Moment for Probabilistic Loops. PACM on Programming Languages, 6, OOPSLA2 (2022), Article 178, 29 pages. https://doi.org/10.1145/3563341
Google Scholar
Digital Library
- Lasse R. Nielsen. 2000. A Denotational Investigation of Defunctionalization. BRICS. https://www.brics.dk/RS/00/47/
Google Scholar
- Adam Paszke, Sam Gross, Francisco Massa, Adam Lerer, James Bradbury, Gregory Chanan, Trevor Killeen, Zeming Lin, Natalia Gimelshein, Luca Antiga, Alban Desmaison, Andreas Kopf, Edward Yang, Zachary DeVito, Martin Raison, Alykhan Tejani, Sasank Chilamkurthy, Benoit Steiner, Lu Fang, Junjie Bai, and Soumith Chintala. 2019. PyTorch: An Imperative Style, High-Performance Deep Learning Library. In Proc. NeurIPS. 8024–8035. http://papers.neurips.cc/paper/9015-pytorch-an-imperative-style-high-performance-deep-learning-library
Google Scholar
- Fernando C. N. Pereira and Stuart M. Shieber. 1987. Prolog and Natural-Language Analysis. Center for the Study of Language and Information.
Google Scholar
- Avi Pfeffer. 2001. IBAL: A Probabilistic Rational Programming Language. In Proc. IJCAI. 733–740.
Google Scholar
- Avi Pfeffer. 2005. The Design and Implementation of IBAL: A General-Purpose Probabilistic Language. Harvard Computer Science Group. http://nrs.harvard.edu/urn-3:HUL.InstRepos:25105000
Google Scholar
- Avi Pfeffer. 2016. Practical Probabilistic Programming. Manning.
Google Scholar
- Benjamin C. Pierce. 2002. Types and Programming Languages. MIT Press.
Google Scholar
Digital Library
- Hoifung Poon and Pedro Domingos. 2011. Sum-Product Networks: A New Deep Architecture. In Proc. UAI. 337–346. arxiv:1202.3732
Google Scholar
Cross Ref
- François Pottier and Nadji Gauthier. 2006. Polymorphic Typed Defunctionalization and Concretization. Higher-Order and Symbolic Computation, 19, 1 (2006), March, 125–162. https://doi.org/10.1007/s10990-006-8611-7
Google Scholar
Digital Library
- Lawrence R. Rabiner. 1989. A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition. Proc. IEEE, 77, 2 (1989), Feb., 257–286. https://doi.org/10.1109/5.18626
Google Scholar
Cross Ref
- Tillmann Rendel, Julia Trieflinger, and Klaus Ostermann. 2015. Automatic Refunctionalization to a Language with Copattern Matching: With Applications to the Expression Problem. In Proc. ICFP. 269–279. https://doi.org/10.1145/2784731.2784763
Google Scholar
Digital Library
- John C. Reynolds. 1972. Definitional Interpreters for Higher-Order Programming Languages. In Proc. ACM. 717–740. https://doi.org/10.1145/800194.805852
Google Scholar
Digital Library
- Michael Riley, Cyril Allauzen, and Martin Jansche. 2009. OpenFst: An Open-Source, Weighted Finite-State Transducer Library and its Applications to Speech and Language. In Proc. NAACL HLT, Companion Volume: Tutorial Abstracts. 9–10. https://aclanthology.org/N09-4005
Google Scholar
Cross Ref
- Feras A. Saad, Martin C. Rinard, and Vikash K. Mansinghka. 2021. SPPL: Probabilistic Programming with Fast Exact Symbolic Inference. In Proc. PLDI. 804–819. https://doi.org/10.1145/3453483.3454078
Google Scholar
Digital Library
- Sriram Sankaranarayanan, Yi Chou, Eric Goubault, and Sylvie Putot. 2020. Reasoning about Uncertainties in Discrete-Time Dynamical Systems using Polynomial Forms. In Proc. NeurIPS. 33, 17502–17513. https://proceedings.neurips.cc/paper/2020/hash/ca886eb9edb61a42256192745c72cd79-Abstract.html
Google Scholar
- Dorai Sitaram and Matthias Felleisen. 1990. Control Delimiters and Their Hierarchies. Lisp and Symbolic Computation, 3, 1 (1990), Jan., 67–99. https://doi.org/10.1007/BF01806126
Google Scholar
Digital Library
- Mitchell Stern, Jacob Andreas, and Dan Klein. 2017. A Minimal Span-Based Neural Constituency Parser. In Proc. ACL (Volume 1: Long Papers). 818–827. https://doi.org/10.18653/v1/P17-1076
Google Scholar
Cross Ref
- Alistair Stewart, Kousha Etessami, and Mihalis Yannakakis. 2015. Upper Bounds for Newton’s Method on Monotone Polynomial Systems, and P-Time Model Checking of Probabilistic One-Counter Automata. J. ACM, 62, 4 (2015), Article 30, 33 pages. https://doi.org/10.1145/2789208
Google Scholar
Digital Library
- Andreas Stuhlmüller and Noah Goodman. 2012. A Dynamic Programming Algorithm for Inference in Recursive Probabilistic Programs. In Proc. Workshop on Statistical Relational AI (StaRAI). arxiv:1206.3555
Google Scholar
- Ben Taskar, Dan Klein, Mike Collins, Daphne Koller, and Christopher Manning. 2004. Max-Margin Parsing. In Proc. EMNLP. 1–8. https://www.aclweb.org/anthology/W04-3201
Google Scholar
- Jan-Willem van de Meent, Brooks Paige, Hongseok Yang, and Frank Wood. 2018. An Introduction to Probabilistic Programming. arxiv:1809.10756 arXiv:1809.10756
Google Scholar
- K. Vijay-Shankar and Aravind K. Joshi. 1985. Some Computational Properties of Tree Adjoining Grammars. In Proc. ACL. 82–93. https://doi.org/10.3115/981210.981221
Google Scholar
Digital Library
- K. Vijayashanker. 1994. A Study of Tree Adjoining Grammars. Ph. D. Dissertation. Univ. of Pennsylvania.
Google Scholar
- John von Neumann. 1951. Various Techniques Used in Connection With Random Digits. National Bureau of Standards Applied Mathematics Series, 12 (1951), 36–38.
Google Scholar
- Rajan Walia, Praveen Narayanan, Jacques Carette, Sam Tobin-Hochstadt, and Chung-chieh Shan. 2019. From High-Level Inference Algorithms to Efficient Code. PACM on Programming Languages, 3, ICFP (2019), Article 98, 30 pages. https://doi.org/10.1145/3352468
Google Scholar
Digital Library
- David Walker. 2005. Substructural Type Systems. In Advanced Topics in Types and Programming Languages, Benjamin C. Pierce (Ed.). MIT Press, 3–43.
Google Scholar
- Mitchell Wand, Ryan Culpepper, Theophilos Giannakopoulos, and Andrew Cobb. 2018. Contextual Equivalence for a Probabilistic Language with Continuous Random Variables and Recursion. PACM on Programming Languages, 2, ICFP (2018), Article 87, 38 pages. https://doi.org/10.1145/3236782
Google Scholar
Digital Library
- David J. Weir. 1992. A Geometric Hierarchy Beyond Context-Free Languages. Theoretical Computer Science, 104, 2 (1992), 235–261. https://doi.org/10.1016/0304-3975(92)90124-X
Google Scholar
Digital Library
Index Terms
Exact Recursive Probabilistic Programming
Recommendations
Subtyping Recursive Types in Kernel Fun - Abstract
LICS '99: Proceedings of the 14th Annual IEEE Symposium on Logic in Computer ScienceThe problem of defining and checking a subtype relation between recursive types was studied by Amadio and Cardelli (ACM TOPLAS'93) for a first order type system, but for second order systems, which combine subtyping and parametric polymorphism, only ...
Program Schemes, Queues, the Recursive Spectrum and Zero-one Laws
Machines, Computations and Universality, Part IIWe prove that a very basic class of program schemes augmented with access to a queue and an additional numeric universe within which counting is permitted, so that the resulting class is denoted NPSQ$_+$(1), is such that the class of problems accepted ...
Program Schemes, Queues, the Recursive Spectrum and Zero-one Laws
Machines, Computations and Universality, Part IIWe prove that a very basic class of program schemes augmented with access to a queue and an additional numeric universe within which counting is permitted, so that the resulting class is denoted NPSQ$_+$(1), is such that the class of problems accepted ...






Comments