Modular Primal-Dual Fixpoint Logic Solving for Temporal Verification
We present a novel approach to deciding the validity of formulas in first-order fixpoint logic with background theories and arbitrarily nested inductive and co-inductive predicates defining least and greatest fixpoints. Our approach is constraint-based, and reduces the validity checking problem of t...
Uloženo v:
| Vydáno v: | Proceedings of ACM on programming languages Ročník 7; číslo POPL; s. 2111 - 2140 |
|---|---|
| Hlavní autoři: | , , , |
| Médium: | Journal Article |
| Jazyk: | angličtina |
| Vydáno: |
New York, NY, USA
ACM
09.01.2023
|
| Témata: | |
| ISSN: | 2475-1421, 2475-1421 |
| On-line přístup: | Získat plný text |
| Tagy: |
Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
|
| Abstract | We present a novel approach to deciding the validity of formulas in first-order fixpoint logic with background theories and arbitrarily nested inductive and co-inductive predicates defining least and greatest fixpoints. Our approach is constraint-based, and reduces the validity checking problem of the given first-order-fixpoint logic formula (formally, an instance in a language called µCLP) to a constraint satisfaction problem for a recently introduced predicate constraint language. Coupled with an existing sound-and-relatively-complete solver for the constraint language, this novel reduction alone already gives a sound and relatively complete method for deciding µCLP validity, but we further improve it to a novel modular primal-dual method. The key observations are (1) µCLP is closed under complement such that each (co-)inductive predicate in the original primal instance has a corresponding (co-)inductive predicate representing its complement in the dual instance obtained by taking the standard De Morgan’s dual of the primal instance, and (2) partial solutions for (co-)inductive predicates synthesized during the constraint solving process of the primal side can be used as sound upper-bounds of the corresponding (co-)inductive predicates in the dual side, and vice versa. By solving the primal and dual problems in parallel and exchanging each others’ partial solutions as sound bounds, the two processes mutually reduce each others’ solution spaces, thus enabling rapid convergence. The approach is also modular in that the bounds are synthesized and exchanged at granularity of individual (co-)inductive predicates. We demonstrate the utility of our novel fixpoint logic solving by encoding a wide variety of temporal verification problems in µCLP, including termination/non-termination, LTL, CTL, and even the full modal µ-calculus model checking of infinite state programs. The encodings exploit the modularity in both the program and the property by expressing each loops and (recursive) functions in the program and sub-formulas of the property as individual (possibly nested) (co-)inductive predicates. Together with our novel modular primal-dual µCLP solving, we obtain a novel approach to efficiently solving a wide range of temporal verification problems. |
|---|---|
| AbstractList | We present a novel approach to deciding the validity of formulas in first-order fixpoint logic with background theories and arbitrarily nested inductive and co-inductive predicates defining least and greatest fixpoints. Our approach is constraint-based, and reduces the validity checking problem of the given first-order-fixpoint logic formula (formally, an instance in a language called µCLP) to a constraint satisfaction problem for a recently introduced predicate constraint language.
Coupled with an existing sound-and-relatively-complete solver for the constraint language, this novel reduction alone already gives a sound and relatively complete method for deciding µCLP validity, but we further improve it to a novel modular primal-dual method. The key observations are (1) µCLP is closed under complement such that each (co-)inductive predicate in the original primal instance has a corresponding (co-)inductive predicate representing its complement in the dual instance obtained by taking the standard De Morgan’s dual of the primal instance, and (2) partial solutions for (co-)inductive predicates synthesized during the constraint solving process of the primal side can be used as sound upper-bounds of the corresponding (co-)inductive predicates in the dual side, and vice versa. By solving the primal and dual problems in parallel and exchanging each others’ partial solutions as sound bounds, the two processes mutually reduce each others’ solution spaces, thus enabling rapid convergence. The approach is also modular in that the bounds are synthesized and exchanged at granularity of individual (co-)inductive predicates.
We demonstrate the utility of our novel fixpoint logic solving by encoding a wide variety of temporal verification problems in µCLP, including termination/non-termination, LTL, CTL, and even the full modal µ-calculus model checking of infinite state programs. The encodings exploit the modularity in both the program and the property by expressing each loops and (recursive) functions in the program and sub-formulas of the property as individual (possibly nested) (co-)inductive predicates. Together with our novel modular primal-dual µCLP solving, we obtain a novel approach to efficiently solving a wide range of temporal verification problems. We present a novel approach to deciding the validity of formulas in first-order fixpoint logic with background theories and arbitrarily nested inductive and co-inductive predicates defining least and greatest fixpoints. Our approach is constraint-based, and reduces the validity checking problem of the given first-order-fixpoint logic formula (formally, an instance in a language called µCLP) to a constraint satisfaction problem for a recently introduced predicate constraint language. Coupled with an existing sound-and-relatively-complete solver for the constraint language, this novel reduction alone already gives a sound and relatively complete method for deciding µCLP validity, but we further improve it to a novel modular primal-dual method. The key observations are (1) µCLP is closed under complement such that each (co-)inductive predicate in the original primal instance has a corresponding (co-)inductive predicate representing its complement in the dual instance obtained by taking the standard De Morgan’s dual of the primal instance, and (2) partial solutions for (co-)inductive predicates synthesized during the constraint solving process of the primal side can be used as sound upper-bounds of the corresponding (co-)inductive predicates in the dual side, and vice versa. By solving the primal and dual problems in parallel and exchanging each others’ partial solutions as sound bounds, the two processes mutually reduce each others’ solution spaces, thus enabling rapid convergence. The approach is also modular in that the bounds are synthesized and exchanged at granularity of individual (co-)inductive predicates. We demonstrate the utility of our novel fixpoint logic solving by encoding a wide variety of temporal verification problems in µCLP, including termination/non-termination, LTL, CTL, and even the full modal µ-calculus model checking of infinite state programs. The encodings exploit the modularity in both the program and the property by expressing each loops and (recursive) functions in the program and sub-formulas of the property as individual (possibly nested) (co-)inductive predicates. Together with our novel modular primal-dual µCLP solving, we obtain a novel approach to efficiently solving a wide range of temporal verification problems. |
| ArticleNumber | 72 |
| Author | Gu, Yu Unno, Hiroshi Terauchi, Tachio Koskinen, Eric |
| Author_xml | – sequence: 1 givenname: Hiroshi orcidid: 0000-0002-4225-8195 surname: Unno fullname: Unno, Hiroshi email: uhiro@cs.tsukuba.ac.jp organization: University of Tsukuba, Japan / RIKEN AIP, Japan – sequence: 2 givenname: Tachio orcidid: 0000-0001-5305-4916 surname: Terauchi fullname: Terauchi, Tachio email: terauchi@waseda.ac.jp organization: Waseda University, Japan – sequence: 3 givenname: Yu orcidid: 0000-0003-0036-8967 surname: Gu fullname: Gu, Yu email: kou@logic.cs.tsukuba.ac.jp organization: University of Tsukuba, Japan – sequence: 4 givenname: Eric orcidid: 0000-0001-7363-634X surname: Koskinen fullname: Koskinen, Eric email: ekoskine@stevens.edu organization: Stevens Institute of Technology, USA |
| BookMark | eNpt0E1Lw0AQBuBFKlhr8e4pN0-r2e_sUVqrQkTB6jVs9qOsbLJhk4r-e1tbRcTTDMzDMPMeg1EbWwvAKcovEKLskjCBMGcHYIypYBBRjEa_-iMw7fvXPM-RJLQgcgzm99Gsg0rZY_KNCnC-ViFb-Pcu-nbIyrjyOnuK4c23q8zFlC1t08W0MS82eee1GnxsT8ChU6G3032dgOfF9XJ2C8uHm7vZVQkVKcQALaFY1oYaiZgU3HBtNXZGSFZIjhGzlNiaccuV1KTWDjlLZS2oELjmxCAyAXC3V6fY98m6Svvh64IhKR8qlFfbFKp9Cht__sd32y_Txz_ybCeVbn7Q9_ATAD5lFA |
| CitedBy_id | crossref_primary_10_1145_3729320 crossref_primary_10_1145_3656457 crossref_primary_10_1145_3704888 crossref_primary_10_1145_3632899 crossref_primary_10_1145_3704914 crossref_primary_10_1145_3704904 crossref_primary_10_1145_3720493 |
| Cites_doi | 10.1145/1133255.1134029 10.1017/S1471068411000627 10.2307/2275338 10.1145/1328897.1328459 10.1145/3209108.3209204 10.1145/2499370.2491969 10.1145/3373718.3394766 10.1007/s100090100049 10.1016/0743-1066(94)90033-7 10.1145/1925844.1926431 10.1145/2813885.2737993 10.1145/2629488 10.1007/s10817-019-09532-0 10.1007/s10703-016-0249-4 10.1007/s10817-016-9388-y 10.1145/2345156.2254112 |
| ContentType | Journal Article |
| Copyright | Owner/Author |
| Copyright_xml | – notice: Owner/Author |
| DBID | AAYXX CITATION |
| DOI | 10.1145/3571265 |
| DatabaseName | CrossRef |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | CrossRef |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 2475-1421 |
| EndPage | 2140 |
| ExternalDocumentID | 10_1145_3571265 3571265 |
| GrantInformation_xml | – fundername: NSF (National Science Foundation) grantid: CCF-1618059 funderid: http://dx.doi.org/10.13039/100000001 – fundername: Office of Naval Research grantid: N00014-17-1-2787, N00014-22-1-2643 funderid: http://dx.doi.org/10.13039/100000006 – fundername: Japan Society for the Promotion of Science grantid: JP20H04162, JP20K20625, JP22H03564, JP20H05703, JP22H03570 funderid: http://dx.doi.org/10.13039/501100001691 |
| GroupedDBID | AAKMM AAYFX ACM ADPZR AIKLT AKRVB ALMA_UNASSIGNED_HOLDINGS GUFHI LHSKQ M~E OK1 ROL AAYXX AEFXT AEJOY CITATION |
| ID | FETCH-LOGICAL-a387t-e3429bd4d915976d6cec2fd795896215e43eb56e6a9c3bcf1fe49b74772b63d13 |
| ISICitedReferencesCount | 11 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000910847500072&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 2475-1421 |
| IngestDate | Sat Nov 29 07:54:30 EST 2025 Tue Nov 18 22:32:35 EST 2025 Mon Mar 17 16:30:35 EDT 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | POPL |
| Keywords | fixpoint logics constraint logic programming temporal verification |
| Language | English |
| License | This work is licensed under a Creative Commons Attribution 4.0 International License. |
| LinkModel | OpenURL |
| MergedId | FETCHMERGED-LOGICAL-a387t-e3429bd4d915976d6cec2fd795896215e43eb56e6a9c3bcf1fe49b74772b63d13 |
| ORCID | 0000-0001-5305-4916 0000-0001-7363-634X 0000-0002-4225-8195 0000-0003-0036-8967 |
| OpenAccessLink | https://dl.acm.org/doi/10.1145/3571265 |
| PageCount | 30 |
| ParticipantIDs | crossref_citationtrail_10_1145_3571265 crossref_primary_10_1145_3571265 acm_primary_3571265 |
| PublicationCentury | 2000 |
| PublicationDate | 2023-01-09 |
| PublicationDateYYYYMMDD | 2023-01-09 |
| PublicationDate_xml | – month: 01 year: 2023 text: 2023-01-09 day: 09 |
| PublicationDecade | 2020 |
| PublicationPlace | New York, NY, USA |
| PublicationPlace_xml | – name: New York, NY, USA |
| PublicationTitle | Proceedings of ACM on programming languages |
| PublicationTitleAbbrev | ACM PACMPL |
| PublicationYear | 2023 |
| Publisher | ACM |
| Publisher_xml | – name: ACM |
| References | Adrien Champion, Tomoya Chiba, Naoki Kobayashi, and Ryosuke Sato. 2018. ICE-Based Refinement Type Discovery for Higher-Order Functional Programs. In TACAS ’18 (LNCS, Vol. 10805). Springer, 365–384. Laurent Fribourg. 1999. Constraint Logic Programming Applied to Model Checking. In LOPSTR ’99. Springer, 30–41. Byron Cook, Eric Koskinen, and Moshe Vardi. 2011. Temporal Property Verification As a Program Analysis Task. In CAV ’11. Springer, 333–348. Yuki Satake, Hiroshi Unno, and Hinata Yanagi. 2020. Probabilistic Inference for Predicate Constraint Satisfaction. AAAI ’20, 34, 02 (2020), Apr., 1644–1651. Nikolaj Bjørner, Arie Gurfinkel, Kenneth L. McMillan, and Andrey Rybalchenko. 2015. Horn Clause Solvers for Program Verification. In Fields of Logic and Computation II: Essays Dedicated to Yuri Gurevich on the Occasion of His 75th Birthday (LNCS, Vol. 9300). Springer, 24–51. Oded Padon, James R. Wilcox, Jason R. Koenig, Kenneth L. McMillan, and Alex Aiken. 2022. Induction duality: primal-dual search for invariants. 6, POPL (2022), 1–29. Yoji Nanjo, Hiroshi Unno, Eric Koskinen, and Tachio Terauchi. 2018. A Fixpoint Logic and Dependent Effects for Temporal Property Verification. In LICS ’18. ACM, 759–768. Hiroshi Unno, Sho Torii, and Hiroki Sakamoto. 2017. Automating Induction for Solving Horn Clauses. In CAV ’17. Springer, 571–591. Takuya Kuwahara, Tachio Terauchi, Hiroshi Unno, and Naoki Kobayashi. 2014. Automatic Termination Verification for Higher-Order Functional Programs. In ESOP ’14 (LNCS, Vol. 8410). Springer, 392–411. Ton Chanh Le, Shengchao Qin, and Wei-Ngan Chin. 2015. Termination and Non-termination Specification Inference. In PLDI ’15. ACM, 489–498. Witold Charatonik, David A. McAllester, Damian Niwinski, Andreas Podelski, and Igor Walukiewicz. 1998. The Horn Mu-calculus. In LICS ’98. IEEE Computer Society, 58–69. Ranjit Jhala and Kenneth L. McMillan. 2006. A Practical and Complete Approach to Predicate Refinement. In TACAS ’06 (LNCS, Vol. 3920). Springer, 459–473. Arie Gurfinkel, Temesghen Kahsai, Anvesh Komuravelli, and Jorge A. Navas. 2015. The SeaHorn Verification Framework. In CAV ’15. Springer, 343–361. Stephan Falke, Deepak Kapur, and Carsten Sinz. 2011. Termination Analysis of C Programs Using Compiler Intermediate Languages. In RTA ’11. 10, Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, 41–50. Julian C. Bradfield. 1999. Fixpoint Alternation and the Game Quantifier. In CSL ’99 (LNCS, Vol. 1683). Springer, 350–361. Daniel Dietsch, Matthias Heizmann, Vincent Langenfeld, and Andreas Podelski. 2015. Fairness Modulo Theory: A New Approach to LTL Software Model Checking. In CAV ’15. Springer, 49–66. Caterina Urban, Samuel Ueltschi, and Peter Müller. 2018. Abstract Interpretation of CTL Properties. In SAS ’18 (LNCS, Vol. 11002). Springer, 402–422. Edmund M. Clarke, Orna Grumberg, Somesh Jha, Yuan Lu, and Helmut Veith. 2000. Counterexample-Guided Abstraction Refinement. In CAV ’00 (LNCS, Vol. 1855). Springer, 154–169. Giorgio Delzanno and Andreas Podelski. 2001. Constraint-based Deductive Model Checking. International Journal on Software Tools for Technology Transfer, 3, 3 (2001), 250–270. Anvesh Komuravelli, Arie Gurfinkel, and Sagar Chaki. 2016. SMT-Based Model Checking for Recursive Programs. Formal Methods in System Design, 48, 3 (2016), June, 175–205. issn:0925-9856 Hong Yi Chen, Byron Cook, Carsten Fuhs, Kaustubh Nimkar, and Peter W. O’Hearn. 2014. Proving Nontermination via Safety. In TACAS ’14 (LNCS, Vol. 8413). Springer, 156–171. Sergey Grebenshchikov, Nuno P. Lopes, Corneliu Popeea, and Andrey Rybalchenko. 2012. Synthesizing Software Verifiers from Proof Rules. In PLDI ’12. ACM, 405–416. Temesghen Kahsai, Philipp Rümmer, Huascar Sanchez, and Martin Schäf. 2016. JayHorn: A Framework for Verifying Java programs. In CAV ’16. 9779, Springer, 352–358. Naoki Kobayashi, Takeshi Tsukada, and Keiichi Watanabe. 2018. Higher-Order Program Verification via HFL Model Checking. In ESOP ’18. Springer, 711–738. Ulf Nilsson and Johan Lübcke. 2000. Constraint Logic Programming for Local and Symbolic Model-Checking. In CL ’00. Springer, 384–398. Byron Cook and Eric Koskinen. 2013. Reasoning About Nondeterminism in Programs. In PLDI ’13. ACM, 219–230. Takeshi Tsukada. 2020. On Computability of Logical Approaches to Branching-Time Property Verification of Programs. In LICS ’20. ACM, 886–899. Byron Cook, Heidy Khlaaf, and Nir Piterman. 2017. Verifying Increasingly Expressive Temporal Logics for Infinite-State Systems. J. ACM, 64, 2 (2017), Article 15, April, 39 pages. Hiroshi Unno and Naoki Kobayashi. 2009. Dependent Type Inference with Interpolants. In PPDP ’09. ACM, 277–288. Caterina Urban. 2013. The Abstract Domain of Segmented Ranking Functions. In SAS ’13 (LNCS, Vol. 7935). Springer, 43–62. Byron Cook, Andreas Podelski, and Andrey Rybalchenko. 2006. Termination proofs for systems code. In PLDI ’06. ACM, 415–426. Robert S. Lubarsky. 1993. μ -Definable Sets of Integers. Journal of Symbolic Logic, 58, 1 (1993), 291–313. Grigory Fedyukovich, Yueling Zhang, and Aarti Gupta. 2018. Syntax-Guided Termination Analysis. In CAV ’18 (LNCS, Vol. 10981). Springer, 124–143. Patrice Godefroid, Aditya V. Nori, Sriram K. Rajamani, and SaiDeep Tetali. 2010. Compositional may-must program analysis: unleashing the power of alternation. In POPL ’10, Manuel V. Hermenegildo and Jens Palsberg (Eds.). ACM, 43–56. Gadi Tellez and James Brotherston. 2020. Automatically Verifying Temporal Properties of Pointer Programs with Cyclic Proof. Journal of Automated Reasoning, 64, 3 (2020), 555–578. Ashutosh Gupta, Thomas A. Henzinger, Rupak Majumdar, Andrey Rybalchenko, and Ru-Gang Xu. 2008. Proving non-termination. In POPL ’08. ACM, 147–158. Hiroshi Unno, Yuki Satake, Tachio Terauchi, and Eric Koskinen. 2020. Program Verification via Predicate Constraint Satisfiability Modulo Theories. CoRR, abs/2007.03656 (2020), arXiv:2007.03656. arxiv:2007.03656 Byron Cook, Heidy Khlaaf, and Nir Piterman. 2015. Fairness for Infinite-State Systems. In TACAS ’15. Springer, 384–398. Naoki Kobayashi, Takeshi Nishikawa, Atsushi Igarashi, and Hiroshi Unno. 2019. Temporal Verification of Programs via First-Order Fixpoint Logic. In SAS ’19. Springer, 413–436. Hiroshi Unno, Tachio Terauchi, and Eric Koskinen. 2021. Constraint-Based Relational Verification. In CAV ’21. Springer, 742–766. Hossein Hojjat and Philipp Rümmer. 2018. The Eldarica Horn Solver. In FMCAD ’18. IEEE, 1–7. Anvesh Komuravelli, Arie Gurfinkel, and Sagar Chaki. 2014. SMT-Based Model Checking for Recursive Programs. In CAV ’14 (LNCS, Vol. 8559). Springer, 17–34. Tomáš Babiak, Mojmír Křetínský, Vojtěch Řehák, and Jan Strejček. 2012. LTL to Büchi Automata Translation: Fast and More Deterministic. In TACAS ’12. Springer, 95–109. Thomas Ball and Sriram K. Rajamani. 2002. The SLAM project: debugging system software via static analysis. In POPL ’02. ACM, 1–3. Tewodros A. Beyene, Corneliu Popeea, and Andrey Rybalchenko. 2013. Solving Existentially Quantified Horn Clauses. In CAV ’13 (LNCS, Vol. 8044). Springer, 869–882. Thomas A. Henzinger, Ranjit Jhala, Rupak Majumdar, and Kenneth L. McMillan. 2004. Abstractions from proofs. In POPL ’04. ACM, 232–244. Kenneth L. McMillan. 2014. Lazy Annotation Revisited. In CAV ’14, Armin Biere and Roderick Bloem (Eds.) (Lecture Notes in Computer Science, Vol. 8559). Springer, 243–259. Aaron R. Bradley. 2011. SAT-based Model Checking Without Unrolling. In VMCAI ’11 (LNCS, Vol. 6538). Springer, 70–87. Fabio Fioravanti, Alberto Pettorossi, Maurizio Proietti, and Valerio Senni. 2013. Generalization strategies for the verification of infinite state systems. Theory and Practice of Logic Programming, 13, 2 (2013), 175–199. Amir M. Ben-Amram and Samir Genaim. 2014. Ranking Functions for Linear-Constraint Loops. J. ACM, 61, 4 (2014), Article 26, July, 55 pages. Caterina Urban and Antoine Miné. 2014. An Abstract Domain to Infer Ordinal-Valued Ranking Functions. In ESOP ’14. Springer, 412–431. Matthias Heizmann, Jochen Hoenicke, and Andreas Podelski. 2014. Termination Analysis by Learning Terminating Programs. In CAV ’14. Springer, 797–813. Hiroshi Unno, Yuki Satake, and Tachio Terauchi. 2017. Relatively Complete Refinement Type System for Verification of Higher-order Non-deterministic Programs. Proceedings of the ACM on Programming Languages, 2, POPL (2017), Article 12, Dec., 29 pages. Byron Cook, Heidy Khlaaf, and Nir Piterman. 2015. On Automation of CTL* Verification for Infinite-State Systems. In CAV ’15. Springer, 13–29. Marc Brockschmidt, Byron Cook, Samin Ishtiaq, Heidy Khlaaf, and Nir Piterman. 2016. T2: Temporal Property Verification. In TACAS ’16. Springer, 387–393. isbn:978-3-662-49674-9 Juergen Giesl, Cornelius Aschermann, Marc Brockschmidt, Fabian Emmes, Florian Frohn, Carsten Fuhs, Jera Hensel, Carsten Otto, Martin Pluecker, Peter Schneider-Kamp, Thomas Stroeder, Stephanie Swiderski, and Rene Thiemann. 2017. Analyzing Program Termination and Complexity Automatically with AProVE. Journal of Automated Reasoning, 58 (2017), 3–31. Byron Cook, Carsten Fuhs, Kaustubh Nimkar, and Peter W. O’Hearn. 2014. Disproving termination with overapproximation. In FMCAD ’14. IEEE, 67–74. Byron Cook and Eric Koskinen. 2011. Making Prophecies with Decision Predicates. In POPL ’11. ACM, 399–410. Caterina Urban, Arie Gurfinkel, and Temesghen Kahsai. 2016. Synthesizing Ranking Functions from Bits and Pieces. In TACAS ’16. Springer, 54–70. Tachio Terauchi and Hiroshi Unno. 2015. Relaxed Stratification: A New Approach to Practical Complete Predicate Refinement. In ESOP ’15 (LNCS, Vol. 9032). Springer, 610–633. Joxan Jaffar and Michael J. Maher. 1994. Constraint logic programming: a survey. The Journal of Logic Programming, 19 (1994), 503 – 581. Cook Byron (e_1_2_1_13_1) 2014 Cook Byron (e_1_2_1_15_1) Henzinger Thomas A. (e_1_2_1_33_1) 2004 Cook Byron (e_1_2_1_19_1) Gurfinkel Arie (e_1_2_1_31_1) 2015 Godefroid Patrice (e_1_2_1_28_1) Komuravelli Anvesh (e_1_2_1_40_1) Unno Hiroshi (e_1_2_1_56_1) Urban Caterina (e_1_2_1_58_1) e_1_2_1_20_1 e_1_2_1_41_1 McMillan Kenneth L. (e_1_2_1_45_1) 2014; 259 e_1_2_1_43_1 Urban Caterina (e_1_2_1_60_1) Ball Thomas (e_1_2_1_2_1) 2002 Kahsai Temesghen (e_1_2_1_37_1) Terauchi Tachio (e_1_2_1_51_1) 2015 Kobayashi Naoki (e_1_2_1_39_1) Chen Hong Yi (e_1_2_1_11_1) 2014 Cook Byron (e_1_2_1_14_1) Champion Adrien (e_1_2_1_9_1) Jhala Ranjit (e_1_2_1_36_1) 2006 Padon Oded (e_1_2_1_48_1) 2022 Fedyukovich Grigory (e_1_2_1_24_1) Unno Hiroshi (e_1_2_1_57_1) Cook Byron (e_1_2_1_16_1) 2017; 64 Bradley Aaron R. (e_1_2_1_7_1) Kuwahara Takuya (e_1_2_1_42_1) e_1_2_1_35_1 e_1_2_1_50_1 e_1_2_1_52_1 e_1_2_1_18_1 Bradfield Julian C. (e_1_2_1_6_1) Brockschmidt Marc (e_1_2_1_8_1) Hojjat Hossein (e_1_2_1_34_1) Bjørner Nikolaj (e_1_2_1_5_1) e_1_2_1_23_1 e_1_2_1_46_1 e_1_2_1_21_1 e_1_2_1_44_1 e_1_2_1_27_1 e_1_2_1_25_1 Satake Yuki (e_1_2_1_49_1) 2020 Babiak Tomáš (e_1_2_1_1_1) e_1_2_1_29_1 Beyene Tewodros A. (e_1_2_1_4_1) Unno Hiroshi (e_1_2_1_55_1) 2020 Heizmann Matthias (e_1_2_1_32_1) e_1_2_1_30_1 Urban Caterina (e_1_2_1_59_1) e_1_2_1_3_1 e_1_2_1_53_1 Urban Caterina (e_1_2_1_61_1) Unno Hiroshi (e_1_2_1_54_1) 2017 e_1_2_1_17_1 Fribourg Laurent (e_1_2_1_26_1) Charatonik Witold (e_1_2_1_10_1) Kobayashi Naoki (e_1_2_1_38_1) Nilsson Ulf (e_1_2_1_47_1) Clarke Edmund M. (e_1_2_1_12_1) Dietsch Daniel (e_1_2_1_22_1) |
| References_xml | – reference: Hiroshi Unno, Sho Torii, and Hiroki Sakamoto. 2017. Automating Induction for Solving Horn Clauses. In CAV ’17. Springer, 571–591. – reference: Patrice Godefroid, Aditya V. Nori, Sriram K. Rajamani, and SaiDeep Tetali. 2010. Compositional may-must program analysis: unleashing the power of alternation. In POPL ’10, Manuel V. Hermenegildo and Jens Palsberg (Eds.). ACM, 43–56. – reference: Ashutosh Gupta, Thomas A. Henzinger, Rupak Majumdar, Andrey Rybalchenko, and Ru-Gang Xu. 2008. Proving non-termination. In POPL ’08. ACM, 147–158. – reference: Hiroshi Unno, Yuki Satake, Tachio Terauchi, and Eric Koskinen. 2020. Program Verification via Predicate Constraint Satisfiability Modulo Theories. CoRR, abs/2007.03656 (2020), arXiv:2007.03656. arxiv:2007.03656 – reference: Takeshi Tsukada. 2020. On Computability of Logical Approaches to Branching-Time Property Verification of Programs. In LICS ’20. ACM, 886–899. – reference: Gadi Tellez and James Brotherston. 2020. Automatically Verifying Temporal Properties of Pointer Programs with Cyclic Proof. Journal of Automated Reasoning, 64, 3 (2020), 555–578. – reference: Giorgio Delzanno and Andreas Podelski. 2001. Constraint-based Deductive Model Checking. International Journal on Software Tools for Technology Transfer, 3, 3 (2001), 250–270. – reference: Ranjit Jhala and Kenneth L. McMillan. 2006. A Practical and Complete Approach to Predicate Refinement. In TACAS ’06 (LNCS, Vol. 3920). Springer, 459–473. – reference: Byron Cook, Eric Koskinen, and Moshe Vardi. 2011. Temporal Property Verification As a Program Analysis Task. In CAV ’11. Springer, 333–348. – reference: Tomáš Babiak, Mojmír Křetínský, Vojtěch Řehák, and Jan Strejček. 2012. LTL to Büchi Automata Translation: Fast and More Deterministic. In TACAS ’12. Springer, 95–109. – reference: Caterina Urban, Arie Gurfinkel, and Temesghen Kahsai. 2016. Synthesizing Ranking Functions from Bits and Pieces. In TACAS ’16. Springer, 54–70. – reference: Stephan Falke, Deepak Kapur, and Carsten Sinz. 2011. Termination Analysis of C Programs Using Compiler Intermediate Languages. In RTA ’11. 10, Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, 41–50. – reference: Tewodros A. Beyene, Corneliu Popeea, and Andrey Rybalchenko. 2013. Solving Existentially Quantified Horn Clauses. In CAV ’13 (LNCS, Vol. 8044). Springer, 869–882. – reference: Sergey Grebenshchikov, Nuno P. Lopes, Corneliu Popeea, and Andrey Rybalchenko. 2012. Synthesizing Software Verifiers from Proof Rules. In PLDI ’12. ACM, 405–416. – reference: Hiroshi Unno and Naoki Kobayashi. 2009. Dependent Type Inference with Interpolants. In PPDP ’09. ACM, 277–288. – reference: Ton Chanh Le, Shengchao Qin, and Wei-Ngan Chin. 2015. Termination and Non-termination Specification Inference. In PLDI ’15. ACM, 489–498. – reference: Tachio Terauchi and Hiroshi Unno. 2015. Relaxed Stratification: A New Approach to Practical Complete Predicate Refinement. In ESOP ’15 (LNCS, Vol. 9032). Springer, 610–633. – reference: Daniel Dietsch, Matthias Heizmann, Vincent Langenfeld, and Andreas Podelski. 2015. Fairness Modulo Theory: A New Approach to LTL Software Model Checking. In CAV ’15. Springer, 49–66. – reference: Fabio Fioravanti, Alberto Pettorossi, Maurizio Proietti, and Valerio Senni. 2013. Generalization strategies for the verification of infinite state systems. Theory and Practice of Logic Programming, 13, 2 (2013), 175–199. – reference: Byron Cook, Heidy Khlaaf, and Nir Piterman. 2017. Verifying Increasingly Expressive Temporal Logics for Infinite-State Systems. J. ACM, 64, 2 (2017), Article 15, April, 39 pages. – reference: Byron Cook and Eric Koskinen. 2013. Reasoning About Nondeterminism in Programs. In PLDI ’13. ACM, 219–230. – reference: Hiroshi Unno, Yuki Satake, and Tachio Terauchi. 2017. Relatively Complete Refinement Type System for Verification of Higher-order Non-deterministic Programs. Proceedings of the ACM on Programming Languages, 2, POPL (2017), Article 12, Dec., 29 pages. – reference: Temesghen Kahsai, Philipp Rümmer, Huascar Sanchez, and Martin Schäf. 2016. JayHorn: A Framework for Verifying Java programs. In CAV ’16. 9779, Springer, 352–358. – reference: Naoki Kobayashi, Takeshi Nishikawa, Atsushi Igarashi, and Hiroshi Unno. 2019. Temporal Verification of Programs via First-Order Fixpoint Logic. In SAS ’19. Springer, 413–436. – reference: Amir M. Ben-Amram and Samir Genaim. 2014. Ranking Functions for Linear-Constraint Loops. J. ACM, 61, 4 (2014), Article 26, July, 55 pages. – reference: Robert S. Lubarsky. 1993. μ -Definable Sets of Integers. Journal of Symbolic Logic, 58, 1 (1993), 291–313. – reference: Marc Brockschmidt, Byron Cook, Samin Ishtiaq, Heidy Khlaaf, and Nir Piterman. 2016. T2: Temporal Property Verification. In TACAS ’16. Springer, 387–393. isbn:978-3-662-49674-9 – reference: Edmund M. Clarke, Orna Grumberg, Somesh Jha, Yuan Lu, and Helmut Veith. 2000. Counterexample-Guided Abstraction Refinement. In CAV ’00 (LNCS, Vol. 1855). Springer, 154–169. – reference: Joxan Jaffar and Michael J. Maher. 1994. Constraint logic programming: a survey. The Journal of Logic Programming, 19 (1994), 503 – 581. – reference: Byron Cook, Carsten Fuhs, Kaustubh Nimkar, and Peter W. O’Hearn. 2014. Disproving termination with overapproximation. In FMCAD ’14. IEEE, 67–74. – reference: Hiroshi Unno, Tachio Terauchi, and Eric Koskinen. 2021. Constraint-Based Relational Verification. In CAV ’21. Springer, 742–766. – reference: Oded Padon, James R. Wilcox, Jason R. Koenig, Kenneth L. McMillan, and Alex Aiken. 2022. Induction duality: primal-dual search for invariants. 6, POPL (2022), 1–29. – reference: Thomas A. Henzinger, Ranjit Jhala, Rupak Majumdar, and Kenneth L. McMillan. 2004. Abstractions from proofs. In POPL ’04. ACM, 232–244. – reference: Anvesh Komuravelli, Arie Gurfinkel, and Sagar Chaki. 2014. SMT-Based Model Checking for Recursive Programs. In CAV ’14 (LNCS, Vol. 8559). Springer, 17–34. – reference: Caterina Urban. 2013. The Abstract Domain of Segmented Ranking Functions. In SAS ’13 (LNCS, Vol. 7935). Springer, 43–62. – reference: Caterina Urban, Samuel Ueltschi, and Peter Müller. 2018. Abstract Interpretation of CTL Properties. In SAS ’18 (LNCS, Vol. 11002). Springer, 402–422. – reference: Arie Gurfinkel, Temesghen Kahsai, Anvesh Komuravelli, and Jorge A. Navas. 2015. The SeaHorn Verification Framework. In CAV ’15. Springer, 343–361. – reference: Laurent Fribourg. 1999. Constraint Logic Programming Applied to Model Checking. In LOPSTR ’99. Springer, 30–41. – reference: Byron Cook, Heidy Khlaaf, and Nir Piterman. 2015. On Automation of CTL* Verification for Infinite-State Systems. In CAV ’15. Springer, 13–29. – reference: Matthias Heizmann, Jochen Hoenicke, and Andreas Podelski. 2014. Termination Analysis by Learning Terminating Programs. In CAV ’14. Springer, 797–813. – reference: Yoji Nanjo, Hiroshi Unno, Eric Koskinen, and Tachio Terauchi. 2018. A Fixpoint Logic and Dependent Effects for Temporal Property Verification. In LICS ’18. ACM, 759–768. – reference: Aaron R. Bradley. 2011. SAT-based Model Checking Without Unrolling. In VMCAI ’11 (LNCS, Vol. 6538). Springer, 70–87. – reference: Naoki Kobayashi, Takeshi Tsukada, and Keiichi Watanabe. 2018. Higher-Order Program Verification via HFL Model Checking. In ESOP ’18. Springer, 711–738. – reference: Anvesh Komuravelli, Arie Gurfinkel, and Sagar Chaki. 2016. SMT-Based Model Checking for Recursive Programs. Formal Methods in System Design, 48, 3 (2016), June, 175–205. issn:0925-9856 – reference: Grigory Fedyukovich, Yueling Zhang, and Aarti Gupta. 2018. Syntax-Guided Termination Analysis. In CAV ’18 (LNCS, Vol. 10981). Springer, 124–143. – reference: Hong Yi Chen, Byron Cook, Carsten Fuhs, Kaustubh Nimkar, and Peter W. O’Hearn. 2014. Proving Nontermination via Safety. In TACAS ’14 (LNCS, Vol. 8413). Springer, 156–171. – reference: Caterina Urban and Antoine Miné. 2014. An Abstract Domain to Infer Ordinal-Valued Ranking Functions. In ESOP ’14. Springer, 412–431. – reference: Hossein Hojjat and Philipp Rümmer. 2018. The Eldarica Horn Solver. In FMCAD ’18. IEEE, 1–7. – reference: Witold Charatonik, David A. McAllester, Damian Niwinski, Andreas Podelski, and Igor Walukiewicz. 1998. The Horn Mu-calculus. In LICS ’98. IEEE Computer Society, 58–69. – reference: Yuki Satake, Hiroshi Unno, and Hinata Yanagi. 2020. Probabilistic Inference for Predicate Constraint Satisfaction. AAAI ’20, 34, 02 (2020), Apr., 1644–1651. – reference: Kenneth L. McMillan. 2014. Lazy Annotation Revisited. In CAV ’14, Armin Biere and Roderick Bloem (Eds.) (Lecture Notes in Computer Science, Vol. 8559). Springer, 243–259. – reference: Nikolaj Bjørner, Arie Gurfinkel, Kenneth L. McMillan, and Andrey Rybalchenko. 2015. Horn Clause Solvers for Program Verification. In Fields of Logic and Computation II: Essays Dedicated to Yuri Gurevich on the Occasion of His 75th Birthday (LNCS, Vol. 9300). Springer, 24–51. – reference: Byron Cook and Eric Koskinen. 2011. Making Prophecies with Decision Predicates. In POPL ’11. ACM, 399–410. – reference: Byron Cook, Andreas Podelski, and Andrey Rybalchenko. 2006. Termination proofs for systems code. In PLDI ’06. ACM, 415–426. – reference: Ulf Nilsson and Johan Lübcke. 2000. Constraint Logic Programming for Local and Symbolic Model-Checking. In CL ’00. Springer, 384–398. – reference: Takuya Kuwahara, Tachio Terauchi, Hiroshi Unno, and Naoki Kobayashi. 2014. Automatic Termination Verification for Higher-Order Functional Programs. In ESOP ’14 (LNCS, Vol. 8410). Springer, 392–411. – reference: Thomas Ball and Sriram K. Rajamani. 2002. The SLAM project: debugging system software via static analysis. In POPL ’02. ACM, 1–3. – reference: Byron Cook, Heidy Khlaaf, and Nir Piterman. 2015. Fairness for Infinite-State Systems. In TACAS ’15. Springer, 384–398. – reference: Juergen Giesl, Cornelius Aschermann, Marc Brockschmidt, Fabian Emmes, Florian Frohn, Carsten Fuhs, Jera Hensel, Carsten Otto, Martin Pluecker, Peter Schneider-Kamp, Thomas Stroeder, Stephanie Swiderski, and Rene Thiemann. 2017. Analyzing Program Termination and Complexity Automatically with AProVE. Journal of Automated Reasoning, 58 (2017), 3–31. – reference: Adrien Champion, Tomoya Chiba, Naoki Kobayashi, and Ryosuke Sato. 2018. ICE-Based Refinement Type Discovery for Higher-Order Functional Programs. In TACAS ’18 (LNCS, Vol. 10805). Springer, 365–384. – reference: Julian C. Bradfield. 1999. Fixpoint Alternation and the Game Quantifier. In CSL ’99 (LNCS, Vol. 1683). Springer, 350–361. – volume-title: O’Hearn year: 2014 ident: e_1_2_1_13_1 – ident: e_1_2_1_20_1 doi: 10.1145/1133255.1134029 – volume-title: Program Verification via Predicate Constraint Satisfiability Modulo Theories. CoRR, abs/2007.03656 year: 2020 ident: e_1_2_1_55_1 – ident: e_1_2_1_25_1 doi: 10.1017/S1471068411000627 – volume-title: TACAS ’18 (LNCS ident: e_1_2_1_9_1 – ident: e_1_2_1_44_1 doi: 10.2307/2275338 – volume-title: TACAS ’16 ident: e_1_2_1_8_1 – volume: 259 volume-title: Armin Biere and Roderick Bloem (Eds.) (Lecture Notes in Computer Science year: 2014 ident: e_1_2_1_45_1 – volume-title: CAV ’00 (LNCS ident: e_1_2_1_12_1 – volume-title: Fields of Logic and Computation II: Essays Dedicated to Yuri Gurevich on the Occasion of His 75th Birthday (LNCS ident: e_1_2_1_5_1 – volume-title: CL ’00 ident: e_1_2_1_47_1 – volume-title: LICS ’98 ident: e_1_2_1_10_1 – ident: e_1_2_1_30_1 doi: 10.1145/1328897.1328459 – volume-title: CAV ’14 ident: e_1_2_1_32_1 – volume-title: SAS ’18 (LNCS ident: e_1_2_1_61_1 – ident: e_1_2_1_46_1 doi: 10.1145/3209108.3209204 – volume-title: Proceedings of the ACM on Programming Languages, 2, POPL year: 2017 ident: e_1_2_1_54_1 – volume-title: Rajamani year: 2002 ident: e_1_2_1_2_1 – volume-title: McMillan year: 2004 ident: e_1_2_1_33_1 – volume-title: CAV ’11 ident: e_1_2_1_19_1 – volume-title: McMillan year: 2006 ident: e_1_2_1_36_1 – volume-title: POPL year: 2022 ident: e_1_2_1_48_1 – ident: e_1_2_1_53_1 – volume-title: CAV ’17 ident: e_1_2_1_57_1 – volume: 64 year: 2017 ident: e_1_2_1_16_1 article-title: Verifying Increasingly Expressive Temporal Logics for Infinite-State Systems publication-title: J. ACM – volume-title: ESOP ’14 ident: e_1_2_1_60_1 – volume-title: CAV ’13 (LNCS ident: e_1_2_1_4_1 – volume-title: ESOP ’14 (LNCS ident: e_1_2_1_42_1 – ident: e_1_2_1_18_1 doi: 10.1145/2499370.2491969 – volume-title: Relaxed Stratification: A New Approach to Practical Complete Predicate Refinement. In ESOP ’15 (LNCS year: 2015 ident: e_1_2_1_51_1 – volume-title: TACAS ’12 ident: e_1_2_1_1_1 – volume-title: ESOP ’18 ident: e_1_2_1_39_1 – volume-title: SAS ’13 (LNCS ident: e_1_2_1_58_1 – volume-title: FMCAD ’18 ident: e_1_2_1_34_1 – volume-title: CSL ’99 (LNCS ident: e_1_2_1_6_1 – ident: e_1_2_1_52_1 doi: 10.1145/3373718.3394766 – ident: e_1_2_1_21_1 doi: 10.1007/s100090100049 – volume-title: VMCAI ’11 (LNCS ident: e_1_2_1_7_1 – ident: e_1_2_1_23_1 – volume-title: CAV ’18 (LNCS ident: e_1_2_1_24_1 – volume-title: CAV ’21 ident: e_1_2_1_56_1 – volume-title: TACAS ’15 ident: e_1_2_1_14_1 – volume-title: Navas year: 2015 ident: e_1_2_1_31_1 – volume-title: Probabilistic Inference for Predicate Constraint Satisfaction. AAAI ’20, 34, 02 year: 2020 ident: e_1_2_1_49_1 – volume-title: LOPSTR ’99 ident: e_1_2_1_26_1 – volume-title: TACAS ’16 ident: e_1_2_1_59_1 – ident: e_1_2_1_35_1 doi: 10.1016/0743-1066(94)90033-7 – ident: e_1_2_1_17_1 doi: 10.1145/1925844.1926431 – ident: e_1_2_1_43_1 doi: 10.1145/2813885.2737993 – ident: e_1_2_1_3_1 doi: 10.1145/2629488 – ident: e_1_2_1_50_1 doi: 10.1007/s10817-019-09532-0 – volume-title: CAV ’15 ident: e_1_2_1_22_1 – ident: e_1_2_1_41_1 doi: 10.1007/s10703-016-0249-4 – volume-title: CAV ’15 ident: e_1_2_1_15_1 – ident: e_1_2_1_27_1 doi: 10.1007/s10817-016-9388-y – ident: e_1_2_1_29_1 doi: 10.1145/2345156.2254112 – volume-title: CAV ’16. 9779 ident: e_1_2_1_37_1 – volume-title: SAS ’19 ident: e_1_2_1_38_1 – volume-title: O’Hearn year: 2014 ident: e_1_2_1_11_1 – volume-title: POPL ’10, Manuel V ident: e_1_2_1_28_1 – volume-title: CAV ’14 (LNCS ident: e_1_2_1_40_1 |
| SSID | ssj0001934839 |
| Score | 2.3305333 |
| Snippet | We present a novel approach to deciding the validity of formulas in first-order fixpoint logic with background theories and arbitrarily nested inductive and... |
| SourceID | crossref acm |
| SourceType | Enrichment Source Index Database Publisher |
| StartPage | 2111 |
| SubjectTerms | Automated reasoning Constraint and logic programming Logic and verification Program verification Theory of computation |
| SubjectTermsDisplay | Theory of computation -- Automated reasoning Theory of computation -- Constraint and logic programming Theory of computation -- Logic and verification Theory of computation -- Program verification |
| Title | Modular Primal-Dual Fixpoint Logic Solving for Temporal Verification |
| URI | https://dl.acm.org/doi/10.1145/3571265 |
| Volume | 7 |
| WOSCitedRecordID | wos000910847500072&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVHPJ databaseName: ROAD: Directory of Open Access Scholarly Resources customDbUrl: eissn: 2475-1421 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0001934839 issn: 2475-1421 databaseCode: M~E dateStart: 20170101 isFulltext: true titleUrlDefault: https://road.issn.org providerName: ISSN International Centre |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV3Pb9MwFLbK4MCFwQBRNpAPiEsVIHZsx8dpY9qBjkh0aLcqcRwRkSXV1lY9cebP3rNje1lBAg5cosSyLcvv0_Pnl_cDoTdSCplLpiJaMLigJJRGKS2KiILqA3oeU1ZVttiEODtLLy5kNhr99LEw60a0bbrZyMV_FTW0gbBN6Ow_iDtMCg3wDkKHJ4gdnn8l-GlXWtfSzOSRaKJjEx9yUm8WXd0uTYXeWk2-dM3ae1DO-txUzeQrLK5yFrwhZc3CEWe9Pg6PpuYHg_PrujTTeJtnoOfnrS3oPTmt4Qz-VgfrgEnyqWwV4cnMOHF2wftnZY-CVVD_3fV3oL-t19RD2wSh1jYhb1UYSQSL4qSPgX6nf9PmdLAYQC37nH26o1KdNtbus0_v9KvqT0yWDMpETPrqE3eTa28desEVsQ_MZnM38B66TwSTRj9OfwysdZImqS1LF5bfR2Cbse_dWENw1OWA4AyYyuwxeuSuGPiwh8YTNNLtHtr15Tuw0-ZP0bFDCh4gBXukYIsU7JCCASnYIwUPkfIMnZ98nB2dRq6oRpTTVCwjTYGBFGVSSiCygpdcaUWqUkiWSg78TydUF4xrnktFC1XFlU5kAZdOQQpOy5g-Rztt1-oXCOeaVnDfJDlXZcKZyGPN0pJwoT5UKZH5GO3BfswXfdoUv8Nj9Nbvz1y5PPSmHEoz3xLFGOHQ0c-x1eXln7vso4e3yDxAO8urlX6FHqj1sr6-em2lfAO1p3OG |
| linkProvider | ISSN International Centre |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Modular+Primal-Dual+Fixpoint+Logic+Solving+for+Temporal+Verification&rft.jtitle=Proceedings+of+ACM+on+programming+languages&rft.au=Unno%2C+Hiroshi&rft.au=Terauchi%2C+Tachio&rft.au=Gu%2C+Yu&rft.au=Koskinen%2C+Eric&rft.date=2023-01-09&rft.issn=2475-1421&rft.eissn=2475-1421&rft.volume=7&rft.issue=POPL&rft.spage=2111&rft.epage=2140&rft_id=info:doi/10.1145%2F3571265&rft.externalDBID=n%2Fa&rft.externalDocID=10_1145_3571265 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2475-1421&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2475-1421&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2475-1421&client=summon |