skip to main content
10.1145/3533767.3534381acmconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
research-article

Almost correct invariants: synthesizing inductive invariants by fuzzing proofs

Published: 18 July 2022 Publication History

Abstract

Real-life programs contain multiple operations whose semantics are unavailable to verification engines, like third-party library calls, inline assembly and SIMD instructions, special compiler-provided primitives, and queries to uninterpretable machine learning models. Even with the exceptional success story of program verification, synthesis of inductive invariants for such "open" programs has remained a challenge. Currently, this problem is handled by manually "closing" the program---by providing hand-written stubs that attempt to capture the behavior of the unmodelled operations; writing stubs is not only difficult and tedious, but the stubs are often incorrect---raising serious questions on the whole endeavor. In this work, we propose Almost Correct Invariants as an automated strategy for synthesizing inductive invariants for such "open" programs. We adopt an active learning strategy where a data-driven learner proposes candidate invariants. In deviation from prior work that attempt to verify invariants, we attempt to falsify the invariants: we reduce the falsification problem to a set of reachability checks on non-deterministic programs; we ride on the success of modern fuzzers to answer these reachability queries. Our tool, Achar, automatically synthesizes inductive invariants that are sufficient to prove the correctness of the target programs. We compare Achar with a state-of-the-art invariant synthesis tool that employs theorem proving on formulae built over the program source. Though Achar is without strong soundness guarantees, our experiments show that even when we provide almost no access to the program source, Achar outperforms the state-of-the-art invariant generator that has complete access to the source. We also evaluate Achar on programs that current invariant synthesis engines cannot handle---programs that invoke external library calls, inline assembly, and queries to convolution neural networks; Achar successfully infers the necessary inductive invariants within a reasonable time.

References

[1]
[n.d.]. Hacker’s Delight, Second Edition [Book]. https://dl.acm.org/doi/book/10.5555/2462741
[2]
AFL. 2020. american fuzzy lop. https://lcamtuf.coredump.cx/afl/
[3]
Aws Albarghouthi and Kenneth McMillan. 2013. Beautiful Interpolants. In Computer Aided Verification. 313–329. isbn:978-3-642-39798-1 https://doi.org/10.1007/978-3-642-39799-8_22
[4]
Miltiadis Allamanis, Marc Brockschmidt, and Mahmoud Khademi. 2018. Learning to Represent Programs with Graphs. In In Proceeding of ICLR. https://openreview.net/forum?id=BJOFETxR-
[5]
R. Alur, R. Bodik, G. Juniwal, M. M. K. Martin, M. Raghothaman, S. A. Seshia, R. Singh, A. Solar-Lezama, E. Torlak, and A. Udupa. 2013. Syntax-guided synthesis. In 2013 FMCAD. 1–8. https://doi.org/10.1109/FMCAD.2013.6679385
[6]
Angello Astorga, P. Madhusudan, Shambwaditya Saha, Shiyu Wang, and Tao Xie. 2019. Learning Stateful Preconditions modulo a Test Generator. In Proceedings of the 40th ACM SIGPLAN Conference on PLDI (PLDI 2019). ACM, 775–787. isbn:9781450367127 https://doi.org/10.1145/3314221.3314641
[7]
Thomas Ball and James R. Larus. 1996. Efficient Path Profiling. In Proceedings of the 29th Annual ACM/IEEE International Symposium on Microarchitecture (MICRO 29). 46–57. isbn:0818676418
[8]
Rohan Bavishi, Awanish Pandey, and Subhajit Roy. 2016. To Be Precise: Regression Aware Debugging. In Proceedings of the 2016 ACM SIGPLAN OOPSLA (OOPSLA 2016). ACM. https://doi.org/10.1145/2983990.2984014
[9]
Sam Blackshear and Shuvendu K. Lahiri. 2013. Almost-Correct Specifications: A Modular Semantic Framework for Assigning Confidence to Warnings. SIGPLAN Not., jun, 209–218. issn:0362-1340 https://doi.org/10.1145/2499370.2462188
[10]
Marc Brockschmidt, Yuxin Chen, Pushmeet Kohli, Siddharth Krishna, and Daniel Tarlow. 2017. Learning shape analysis. In SAS’17. 66–87.
[11]
Cristian Cadar, Daniel Dunbar, and Dawson Engler. 2008. KLEE: Unassisted and Automatic Generation of High-Coverage Tests for Complex Systems Programs. In Proceedings of the 8th USENIX Conference OSDI (OSDI’08). USENIX Association, 209–224.
[12]
Prantik Chatterjee, Abhijit Chatterjee, Jose Campos, Rui Abreu, and Subhajit Roy. 2020. Diagnosing Software Faults Using Multiverse Analysis. In Proceedings of the Twenty-Ninth IJCAI. IJCAI, 1629–1635. https://doi.org/10.24963/ijcai.2020/226 Main track.
[13]
P. Chen and H. Chen. 2018. Angora: Efficient Fuzzing by Principled Search. In 2018 IEEE SP. 711–725. https://doi.org/10.1109/SP.2018.00046
[14]
R. Chouhan, S. Roy, and S. Baswana. 2013. Pertinent path profiling: Tracking interactions among relevant statements. In Proceedings of the 2013 IEEE/ACM International Symposium on CGO’13. 1–12.
[15]
CodeProject. 2006. Using Inline Assembly in C/C++ - CodeProject. https://www.codeproject.com/Articles/15971/Using-Inline-Assembly-in-C-C
[16]
Michael Colón, S. Sankaranarayanan, and H. B. Sipma. 2003. Linear Invariant Generation Using Non-linear Constraint Solving. In CAV’13.
[17]
Greatest common divisor. [n.d.]. Greatest common divisor - Rosetta Code. https://rosettacode.org/wiki/Greatest_common_divisor
[18]
CP-Algorithms-Factorial. 2014. Factorial modulo P - Competitive Programming Algorithms. https://cp-algorithms.com/algebra/factorial-modulo.html
[19]
CP-Algorithms-GCD. 2014. Euclidean algorithm for computing the greatest common divisor - Competitive Programming Algorithms. https://cp-algorithms.com/algebra/euclid-algorithm.html
[20]
Ron Cytron, Jeanne Ferrante, Barry K. Rosen, Mark N. Wegman, and F. Kenneth Zadeck. 1991. Efficiently Computing Static Single Assignment Form and the Control Dependence Graph. ACM Trans. Program. Lang. Syst., Oct., https://doi.org/10.1145/115372.115320
[21]
Hanjun Dai, Bo Dai, and Le Song. 2016. Discriminative Embeddings of Latent Variable Models for Structured Data. In In Proceedings of The 33rd ICML. 2702–2711. https://proceedings.mlr.press/v48/daib16.html
[22]
Leonardo de Moura and Nikolaj Bjørner. 2008. Z3: An Efficient SMT Solver. In TACAS. 337–340. isbn:978-3-540-78800-3
[23]
Dana Drachsler-Cohen, Sharon Shoham, and Eran Yahav. 2017. Synthesis with Abstract Examples. In CAV. 254–278. isbn:978-3-319-63387-9
[24]
Tommaso Dreossi, Daniel J. Fremont, Shromona Ghosh, Edward Kim, Hadi Ravanbakhsh, Marcell Vazquez-Chanlatte, and Sanjit A. Seshia. 2019. VerifAI: A Toolkit for the Formal Design and Analysis of Artificial Intelligence-Based Systems. In CAV’19. isbn:978-3-030-25540-4
[25]
Parasara Sridhar Duggirala, Sayan Mitra, Mahesh Viswanathan, and Matthew Potok. 2015. C2E2: A Verification Tool for Stateflow Models. In Tools and Algorithms for the Construction and Analysis of Systems. isbn:978-3-662-46681-0
[26]
David K Duvenaud, Dougal Maclaurin, Jorge Iparraguirre, Rafael Bombarell, Timothy Hirzel, Alan Aspuru-Guzik, and Ryan P Adams. 2015. Convolutional Networks on Graphs for Learning Molecular Fingerprints. In In Proceeding of NIPS’15. https://proceedings.neurips.cc/paper/2015/file/f9be311e65d81a9ad8150a60844bb94c-Paper.pdf
[27]
Michael D. Ernst, Jeff H. Perkins, Philip J. Guo, Stephen McCamant, Carlos Pacheco, Matthew S. Tschantz, and Chen Xiao. 2007. The Daikon System for Dynamic Detection of Likely Invariants. Sci. Comput. Program., 69 (2007), dec, 35–45. https://doi.org/10.1016/j.scico.2007.01.015
[28]
P. Ezudheen, Daniel Neider, Deepak D’Souza, Pranav Garg, and P. Madhusudan. 2018. Horn-ICE Learning for Synthesizing Invariants and Contracts. 2, OOPSLA (2018), https://doi.org/10.1145/3276501
[29]
Yu Feng, Ruben Martins, Jacob Van Geffen, Isil Dillig, and Swarat Chaudhuri. 2017. Component-Based Synthesis of Table Consolidation and Transformation Tasks from Examples. In Proceedings of the 38th ACM SIGPLAN Conference PLDI’17. ACM, 15 pages. isbn:9781450349888 https://doi.org/10.1145/3062341.3062351
[30]
Cormac Flanagan, K. Rustan, and M. Leino. 2001. Houdini, an Annotation Assistant for ESC/Java. In FME’21. isbn:978-3-540-41791-0 https://doi.org/10.1007/3-540-45251-6_29
[31]
Anshul Garg and Subhajit Roy. 2015. Synthesizing Heap Manipulations via Integer Linear Programming. In Static Analysis, SAS 2015. Proceedings. https://doi.org/10.1007/978-3-662-48288-9_7
[32]
Pranav Garg, Christof Löding, P. Madhusudan, and Daniel Neider. 2014. ICE: A Robust Framework for Learning Invariants. In CAV. 69–87.
[33]
Pranav Garg, Daniel Neider, P. Madhusudan, and Dan Roth. 2016. Learning Invariants Using Decision Trees and Implication Counterexamples. In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium POPL’16. ACM, 14 pages. https://doi.org/10.1145/2837614.2837664
[34]
Priyanka Golia, Subhajit Roy, and Kuldeep S. Meel. 2020. Manthan: A Data-Driven Approach for Boolean Function Synthesis. In CAV’20. 611–633.
[35]
Priyanka Golia, Subhajit Roy, and Kuldeep S. Meel. 2021. Program Synthesis as Dependency Quantified Formula Modulo Theory. In In Proceedings of IJCAI’21. IJCAI, 1894–1900. https://doi.org/10.24963/ijcai.2021/261 Main Track.
[36]
Priyanka Golia, Subhajit Roy, Friedrich Slivovsky, and Kuldeep S. Meel. 2021. Engineering an Efficient Boolean Functional Synthesis Engine. In ICCAD.
[37]
Sumit Gulwani, Susmit Jha, Ashish Tiwari, and Ramarathnam Venkatesan. 2011. Synthesis of Loop-Free Programs. SIGPLAN Not., 46, 6 (2011), June, 62–73. issn:0362-1340 https://doi.org/10.1145/1993316.1993506
[38]
Istvan Haller, Asia Slowinska, Matthias Neugschwandtner, and Herbert Bos. 2013. Dowsing for Overflows: A Guided Fuzzer to Find Buffer Boundary Violations. In Proceedings of the 22nd USENIX Conference on Security (SEC’13). USENIX Association, 49–64. isbn:9781931971034
[39]
C. A. R. Hoare. 1969. An Axiomatic Basis for Computer Programming. Commun. ACM, 12, 10 (1969), Oct., 576–580. issn:0001-0782 https://doi.org/10.1145/363235.363259
[40]
Honggfuzz. 2020. Honggfuzz. https://honggfuzz.dev/
[41]
Jinseong Jeon, Xiaokang Qiu, Armando Solar-Lezama, and Jeffrey S. Foster. 2015. Adaptive Concretization for Parallel Program Synthesis. In CAV. 377–394. isbn:978-3-319-21668-3
[42]
Jinseong Jeon, Xiaokang Qiu, Armando Solar-Lezama, and Jeffrey S. Foster. 2017. An empirical study of adaptive concretization for parallel program synthesis. FMSD, 50, 1 (2017), 01 Mar, issn:1572-8102 https://doi.org/10.1007/s10703-017-0269-8
[43]
Susmit Jha, Sumit Gulwani, Sanjit A. Seshia, and Ashish Tiwari. 2010. Oracle-guided Component-based Program Synthesis. In In Proceeedings of ICSE’10 (ICSE’10). ACM. https://doi.org/10.1145/1806799.1806833
[44]
Temesghen Kahsai, Yeting Ge, and Cesare Tinelli. 2011. Instantiation-Based Invariant Discovery. NFM’11. 15 pages. isbn:9783642203978
[45]
Sumit Lahiri and Subhajit Roy. 2022. Artifact for Almost Correct Invariants: Synthesizing Inductive Invariants by Fuzzing Proofs on Zenodo. 10.5281/zenodo.6534229. https://doi.org/10.5281/zenodo.6534229
[46]
Sumit Lahiri and Subhajit Roy. 2022. Docker Image for Achar Tool. https://hub.docker.com/repository/docker/acharver1/achar
[47]
Quoc Le and Tomas Mikolov. 2014. Distributed Representations of Sentences and Documents. In Proceedings of the 31st ICML - Volume 32 (ICML’14). JMLR.org, II–1188–II–1196.
[48]
Alan Leung, John Sarracino, and Sorin Lerner. 2015. Interactive Parser Synthesis by Example. June, 565–574. https://doi.org/10.1145/2737924.2738002
[49]
Omer Levy and Yoav Goldberg. 2014. Linguistic Regularities in Sparse and Explicit Word Representations. In Proceedings of the 18th CCNLL. Association for Computational Linguistics. https://doi.org/10.3115/v1/W14-1618
[50]
Omer Levy and Yoav Goldberg. 2014. Neural Word Embedding as Implicit Matrix Factorization. In Proceedings of the 27th NIPS - Volume 2 (NIPS’14). MIT Press.
[51]
Yuekang Li, Bihuan Chen, Mahinthan Chandramohan, Shang-Wei Lin, Yang Liu, and Alwen Tiu. 2017. Steelix: Program-State Based Binary Fuzzing. In Proceedings of the 2017 11th Joint Meeting on ESEC/FSE (ESEC/FSE 2017). ACM, 627–637. isbn:9781450351058 https://doi.org/10.1145/3106237.3106295
[52]
Anders Miltner, Saswat Padhi, Todd Millstein, and David Walker. 2020. Data-Driven Inference of Representation Invariants. In Proceedings of the 41st ACM SIGPLAN Conference on PLDI (PLDI 2020). ACM, 1–15. isbn:9781450376136 https://doi.org/10.1145/3385412.3385967
[53]
Matthias Neugschwandtner, Paolo Milani Comparetti, Istvan Haller, and Herbert Bos. 2015. The BORG: Nanoprobing Binaries for Buffer Overreads. In Proceedings of the 5th ACM Conference CODASPY (CODASPY ’15). ACM, 87–97. isbn:9781450331913 https://doi.org/10.1145/2699026.2699098
[54]
ThanhVu Nguyen, Timos Antonopoulos, Andrew Ruef, and Michael Hicks. 2017. Counterexample-Guided Approach to Finding Numerical Invariants. In Proceedings of the 2017 11th Joint Meeting on FSE (ESEC/FSE 2017). ACM, 605–615. isbn:9781450351058 https://doi.org/10.1145/3106237.3106281
[55]
ThanhVu Nguyen, Deepak Kapur, Westley Weimer, and Stephanie Forrest. 2012. Using Dynamic Analysis to Discover Polynomial and Array Invariants. In Proceedings of the 34th ICSE (ICSE ’12). IEEE Press, 683–693. isbn:9781467310673
[56]
Elements of Programming Interviews. [n.d.]. Elements of Programming Interviews. https://elementsofprogramminginterviews.com/
[57]
Saswat Padhi, Rahul Sharma, and Todd Millstein. 2016. Data-Driven Precondition Inference with Learned Features. In Proceedings of the 37th ACM SIGPLAN Conference PLDI’16. ACM, 15 pages. isbn:9781450342612 https://doi.org/10.1145/2908080.2908099
[58]
Awanish Pandey, Phani Raj Goutham Kotcharlakota, and Subhajit Roy. 2019. Deferred Concretization in Symbolic Execution via Fuzzing. In Proceedings of the 28th ACM SIGSOFT ISSTA (ISSTA 2019). ACM. https://doi.org/10.1145/3293882.3330554
[59]
Nadia Polikarpova, Ivan Kuraj, and Armando Solar-Lezama. 2016. Program Synthesis from Polymorphic Refinement Types. In Proceedings of the 37th ACM SIGPLAN Conference PLDI’16. ACM, 522–538. isbn:9781450342612 https://doi.org/10.1145/2908080.2908093
[60]
Xiaokang Qiu and Armando Solar-Lezama. 2017. Natural Synthesis of Provably-Correct Data-Structure Manipulations. In OOPSLA. 28 pages. https://doi.org/10.1145/3133889
[61]
Sanjay Rawat, Vivek Jain, Ashish Kumar, L. Cojocar, Cristiano Giuffrida, and H. Bos. 2017. VUzzer: Application-aware Evolutionary Fuzzing. In NDSS.
[62]
Integer Cube Root. [n.d.]. Integer Cube Root - Hacker’s Delight [Book].
[63]
Subhajit Roy. 2013. From Concrete Examples to Heap Manipulating Programs. In Static Analysis: 20th International Symposium, SAS 2013, June 20-22, 2013. Proceedings. https://doi.org/10.1007/978-3-642-38856-9_9
[64]
S. Roy, J. Hsu, and A. Albarghouthi. 2021. Learning Differentially Private Mechanisms. In 2021 2021 IEEE SP. IEEE Computer Society, 852–865. https://doi.org/10.1109/SP40001.2021.00060
[65]
Subhajit Roy, Awanish Pandey, Brendan Dolan-Gavitt, and Yu Hu. 2018. Bug Synthesis: Challenging Bug-Finding Tools with Deep Faults. In Proceedings of the 26th ACM Joint Meeting on ESEC/FSE (ESEC/FSE 2018). ACM, 224–234. isbn:9781450355735 https://doi.org/10.1145/3236024.3236084
[66]
Subhajit Roy and Y. N. Srikant. 2009. Profiling K-Iteration Paths: A Generalization of the Ball-Larus Profiling Algorithm. 11 pages. isbn:9780769535760 https://doi.org/10.1109/CGO.2009.11
[67]
Sriram Sankaranarayanan, Henny B. Sipma, and Zohar Manna. 2004. Non-Linear Loop Invariant Generation Using GröBner Bases. In Proceedings of the 31st ACM SIGPLAN-SIGACT Symposium on POPL (POPL ’04). ACM, 318–329. isbn:158113729X https://doi.org/10.1145/964001.964028
[68]
F. Scarselli, M. Gori, A. C. Tsoi, M. Hagenbuchner, and G. Monfardini. 2009. The Graph Neural Network Model. IEEE Transactions on Neural Networks, 20, 1 (2009), 61–80. https://doi.org/10.1109/TNN.2008.2005605
[69]
Fibonacci sequence. [n.d.]. Fibonacci sequence - Rosetta Code. https://rosettacode.org/wiki/Fibonacci_sequence
[70]
Rahul Sharma and Alex Aiken. 2014. From Invariant Checking to Invariant Inference Using Randomized Search. In CAV. isbn:978-3-319-08867-9 https://doi.org/10.1007/978-3-319-08867-9_6
[71]
Rahul Sharma, Saurabh Gupta, Bharath Hariharan, Alex Aiken, Percy Liang, and Aditya V. Nori. 2013. A Data Driven Approach for Algebraic Loop Invariants. In Programming Languages and Systems. 574–592.
[72]
Rahul Sharma, Aditya V. Nori, and Alex Aiken. 2012. Interpolants as Classifiers. In CAV. 71–87.
[73]
Xujie Si, Hanjun Dai, Mukund Raghothaman, Mayur Naik, and Le Song. 2018. Learning Loop Invariants for Program Verification. In Proceedings of the 32nd International Conference NIPS (NIPS’18). Curran Associates Inc., 7762–7773.
[74]
Xujie Si, Aaditya Naik, Hanjun Dai, Mayur Naik, and Le Song. 2020. Code2Inv: A Deep Learning Framework for Program Verification. In CAV.
[75]
Dhruv Singal, Palak Agarwal, Saket Jhunjhunwala, and Subhajit Roy. 2018. Parse Condition: Symbolic Encoding of LL(1) Parsing. In LPAR-22. 22nd International Conference LPAR (EPiC Series in Computing). EasyChair, 637–655. issn:2398-7340 https://doi.org/10.29007/2ndp
[76]
Integer square root. 2021. Integer square root - Wikipedia. https://en.wikipedia.org/wiki/Integer_square_root
[77]
SyGus. 2017. SyGuS-Comp 2017. https://sygus.org/comp/2017/
[78]
Gourav Takhar, Ramesh Karri, Christian Pilato, and Subhajit Roy. 2022. HOLL: Program Synthesis for Higher Order Logic Locking. In TACAS. 3–24. isbn:978-3-030-99524-9
[79]
Aakanksha Verma, Pankaj Kumar Kalita, Awanish Pandey, and Subhajit Roy. 2020. Interactive Debugging of Concurrent Programs under Relaxed Memory Models. In Proceedings of the 18th ACM/IEEE International Symposium CGO’20. ACM, 68–80. isbn:9781450370479 https://doi.org/10.1145/3368826.3377910
[80]
Sahil Verma and Subhajit Roy. 2017. Synergistic Debug-repair of Heap Manipulations. In Proceedings of the 2017 11th Joint Meeting on ECSE/FSE (ESEC/FSE 2017). ACM. https://doi.org/10.1145/3106237.3106263
[81]
Sahil Verma and Subhajit Roy. 2022. Debug-localize-repair: a symbiotic construction for heap manipulations. In Formal Methods in System Design.
[82]
Tielei Wang, Tao Wei, Guofei Gu, and Wei Zou. 2010. TaintScope: A Checksum-Aware Directed Fuzzing Tool for Automatic Software Vulnerability Detection. In Proceedings of the 2010 IEEE Symposium on Security and Privacy (SP ’10). IEEE Computer Society, 497–512. isbn:9780769540351 https://doi.org/10.1109/SP.2010.37
[83]
Wikipedia. 2021. John Selfridge — Wikipedia, The Free Encyclopedia.
[84]
Maysam Yabandeh, Abhishek Anand, Marco Canini, and Dejan Kostic. 2011. Finding Almost-Invariants in Distributed Systems. In 2011 IEEE 30th International SRDS. 177–182. https://doi.org/10.1109/SRDS.2011.29
[85]
Navid Yaghmazadeh, Christian Klinger, Isil Dillig, and Swarat Chaudhuri. 2016. Synthesizing Transformations on Hierarchically Structured Data. In Proceedings of PLDI’16. ACM, 508–521. isbn:9781450342612 https://doi.org/10.1145/2908080.2908088
[86]
He Zhu, Stephen Magill, and Suresh Jagannathan. 2018. A Data-Driven CHC Solver. In Proceedings of the 39th ACM SIGPLAN Conference on PLDI (PLDI 2018). ACM, 707–721. isbn:9781450356985 https://doi.org/10.1145/3192366.3192416

Cited By

View all
  • (2024)Interactive Theorem Proving Modulo FuzzingComputer Aided Verification10.1007/978-3-031-65627-9_24(480-493)Online publication date: 24-Jul-2024
  • (2023)AGORA: Automated Generation of Test Oracles for REST APIsProceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis10.1145/3597926.3598114(1018-1030)Online publication date: 12-Jul-2023
  • (2023)An Integrated Program Analysis Framework for Graduate Courses in Programming Languages and Software EngineeringProceedings of the 38th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE56229.2023.00101(598-610)Online publication date: 11-Nov-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ISSTA 2022: Proceedings of the 31st ACM SIGSOFT International Symposium on Software Testing and Analysis
July 2022
808 pages
ISBN:9781450393799
DOI:10.1145/3533767
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 July 2022

Permissions

Request permissions for this article.

Check for updates

Badges

Author Tags

  1. fuzzing
  2. inductive invariant synthesis
  3. testing
  4. verification

Qualifiers

  • Research-article

Conference

ISSTA '22
Sponsor:

Upcoming Conference

ISSTA '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)141
  • Downloads (Last 6 weeks)24
Reflects downloads up to 16 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Interactive Theorem Proving Modulo FuzzingComputer Aided Verification10.1007/978-3-031-65627-9_24(480-493)Online publication date: 24-Jul-2024
  • (2023)AGORA: Automated Generation of Test Oracles for REST APIsProceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis10.1145/3597926.3598114(1018-1030)Online publication date: 12-Jul-2023
  • (2023)An Integrated Program Analysis Framework for Graduate Courses in Programming Languages and Software EngineeringProceedings of the 38th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE56229.2023.00101(598-610)Online publication date: 11-Nov-2023
  • (2023)SR-SFLL: Structurally Robust Stripped Functionality Logic LockingComputer Aided Verification10.1007/978-3-031-37709-9_10(190-212)Online publication date: 17-Jul-2023
  • (2022)Synthesizing abstract transformersProceedings of the ACM on Programming Languages10.1145/35633346:OOPSLA2(1291-1319)Online publication date: 31-Oct-2022
  • (2022)Satisfiability modulo fuzzing: a synergistic combination of SMT solving and fuzzingProceedings of the ACM on Programming Languages10.1145/35633326:OOPSLA2(1236-1263)Online publication date: 31-Oct-2022

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media