{"title":"Single-Set Cubical Categories and Their Formalisation with a Proof Assistant","authors":"Philippe Malbos, Tanguy Massacrier, Georg Struth","doi":"10.1007/s10817-024-09710-9","DOIUrl":"https://doi.org/10.1007/s10817-024-09710-9","url":null,"abstract":"<p>We introduce a single-set axiomatisation of cubical <span>(omega )</span>-categories, including connections and inverses. We justify these axioms by establishing a series of equivalences between the category of single-set cubical <span>(omega )</span>-categories, and their variants with connections and inverses, and the corresponding cubical <span>(omega )</span>-categories. We also report on the formalisation of cubical <span>(omega )</span>-categories with the Isabelle/HOL proof assistant, which has been instrumental in developing the single-set axiomatisation.</p>","PeriodicalId":15082,"journal":{"name":"Journal of Automated Reasoning","volume":"76 1","pages":""},"PeriodicalIF":1.1,"publicationDate":"2024-09-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142180305","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Jason Gross, Andres Erbsen, Jade Philipoom, Rajashree Agrawal, Adam Chlipala
{"title":"Towards a Scalable Proof Engine: A Performant Prototype Rewriting Primitive for Coq","authors":"Jason Gross, Andres Erbsen, Jade Philipoom, Rajashree Agrawal, Adam Chlipala","doi":"10.1007/s10817-024-09705-6","DOIUrl":"https://doi.org/10.1007/s10817-024-09705-6","url":null,"abstract":"<p>We address the challenges of scaling verification efforts to match the increasing complexity and size of systems. We propose a research agenda aimed at building a performant proof engine by studying the asymptotic performance of proof engines and redesigning their building blocks. As a case study, we explore equational rewriting and introduce a novel prototype proof engine building block for rewriting in Coq, utilizing proof by reflection for enhanced performance. Our prototype implementation can significantly improve the development of verified compilers, as demonstrated in a case study with the Fiat Cryptography toolchain. The resulting extracted command-line compiler is about 1000<span>(times )</span> faster while featuring simpler compiler-specific proofs. This work lays some foundation for scaling verification efforts and contributes to the broader goal of developing a proof engine with good asymptotic performance, ultimately aimed at enabling the verification of larger and more complex systems.</p>","PeriodicalId":15082,"journal":{"name":"Journal of Automated Reasoning","volume":"48 1","pages":""},"PeriodicalIF":1.1,"publicationDate":"2024-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142180306","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Guy Amir, Osher Maayan, Tom Zelazny, Guy Katz, Michael Schapira
{"title":"Verifying the Generalization of Deep Learning to Out-of-Distribution Domains","authors":"Guy Amir, Osher Maayan, Tom Zelazny, Guy Katz, Michael Schapira","doi":"10.1007/s10817-024-09704-7","DOIUrl":"https://doi.org/10.1007/s10817-024-09704-7","url":null,"abstract":"<p>Deep neural networks (DNNs) play a crucial role in the field of machine learning, demonstrating state-of-the-art performance across various application domains. However, despite their success, DNN-based models may occasionally exhibit challenges with <i>generalization</i>, i.e., may fail to handle inputs that were not encountered during training. This limitation is a significant challenge when it comes to deploying deep learning for safety-critical tasks, as well as in real-world settings characterized by substantial variability. We introduce a novel approach for harnessing DNN verification technology to identify DNN-driven decision rules that exhibit robust generalization to previously unencountered input domains. Our method assesses generalization within an input domain by measuring the level of agreement between <i>independently trained</i> deep neural networks for inputs in this domain. We also efficiently realize our approach by using off-the-shelf DNN verification engines, and extensively evaluate it on both supervised and unsupervised DNN benchmarks, including a deep reinforcement learning (DRL) system for Internet congestion control—demonstrating the applicability of our approach for real-world settings. Moreover, our research introduces a fresh objective for formal verification, offering the prospect of mitigating the challenges linked to deploying DNN-driven systems in real-world scenarios.</p>","PeriodicalId":15082,"journal":{"name":"Journal of Automated Reasoning","volume":"1 1","pages":""},"PeriodicalIF":1.1,"publicationDate":"2024-08-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141940717","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Dependency Schemes in CDCL-Based QBF Solving: A Proof-Theoretic Study","authors":"Abhimanyu Choudhury, Meena Mahajan","doi":"10.1007/s10817-024-09707-4","DOIUrl":"https://doi.org/10.1007/s10817-024-09707-4","url":null,"abstract":"<p>In Quantified Boolean Formulas QBFs, dependency schemes help to detect spurious or superfluous dependencies that are implied by the variable ordering in the quantifier prefix but are not essential for constructing countermodels. This detection can provably shorten refutations in specific proof systems, and is expected to speed up runs of QBF solvers. The proof system <span>(texttt{QCDCL})</span> recently defined by Beyersdorff and Boehm (LMCS 2023) abstracts the reasoning employed by QBF solvers based on conflict-driven clause-learning (CDCL) techniques. We show how to incorporate the use of dependency schemes into this proof system, either in a preprocessing phase, or in the propagations and clause learning, or both. We then show that when the reflexive resolution path dependency scheme <span>(texttt{D}^{texttt{rrs}})</span> is used, a mixed picture emerges: the proof systems that add <span>(texttt{D}^{texttt{rrs}})</span> to <span>(texttt{QCDCL})</span> in these three ways are not only incomparable with each other, but are also incomparable with the basic <span>(texttt{QCDCL})</span> proof system that does not use <span>(texttt{D}^{texttt{rrs}})</span> at all, as well as with several other resolution-based QBF proof systems. A notable fact is that all our separations are achieved through QBFs with bounded quantifier alternation.</p>","PeriodicalId":15082,"journal":{"name":"Journal of Automated Reasoning","volume":"47 1","pages":""},"PeriodicalIF":1.1,"publicationDate":"2024-07-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141783750","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Verifying a Sequent Calculus Prover for First-Order Logic with Functions in Isabelle/HOL","authors":"Asta Halkjær From, Frederik Krogsdal Jacobsen","doi":"10.1007/s10817-024-09697-3","DOIUrl":"https://doi.org/10.1007/s10817-024-09697-3","url":null,"abstract":"<p>We describe the design, implementation and verification of an automated theorem prover for first-order logic with functions. The proof search procedure is based on sequent calculus and we formally verify its soundness and completeness in Isabelle/HOL using an existing abstract framework for coinductive proof trees. Our analytic completeness proof covers both open and closed formulas. Since our deterministic prover considers only the subset of terms relevant to proving a given sequent, we do the same when building a countermodel from a failed proof. Finally, we formally connect our prover with the proof system and semantics of the existing SeCaV system. In particular, the prover can generate human-readable SeCaV proofs which are also machine-verifiable proof certificates. The abstract framework we rely on requires us to fix a stream of proof rules in advance, independently of the formula we are trying to prove. We discuss the efficiency implications of this and the difficulties in mitigating them.</p>","PeriodicalId":15082,"journal":{"name":"Journal of Automated Reasoning","volume":"24 1","pages":""},"PeriodicalIF":1.1,"publicationDate":"2024-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141506579","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Refinement of Parallel Algorithms Down to LLVM: Applied to Practically Efficient Parallel Sorting","authors":"Peter Lammich","doi":"10.1007/s10817-024-09701-w","DOIUrl":"https://doi.org/10.1007/s10817-024-09701-w","url":null,"abstract":"<p>We present a stepwise refinement approach to develop verified parallel algorithms, down to efficient LLVM code. The resulting algorithms’ performance is competitive with their counterparts implemented in C++. Our approach is backwards compatible with the Isabelle Refinement Framework, such that existing sequential formalizations can easily be adapted or re-used. As case study, we verify a parallel quicksort algorithm that is competitive to unverified state-of-the-art algorithms.</p>","PeriodicalId":15082,"journal":{"name":"Journal of Automated Reasoning","volume":"4 1","pages":""},"PeriodicalIF":1.1,"publicationDate":"2024-06-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141506580","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Formalized Functional Analysis with Semilinear Maps","authors":"Frédéric Dupuis, Robert Y. Lewis, Heather Macbeth","doi":"10.1007/s10817-024-09696-4","DOIUrl":"https://doi.org/10.1007/s10817-024-09696-4","url":null,"abstract":"<p>Semilinear maps are a generalization of linear maps between vector spaces where we allow the scalar action to be twisted by a ring homomorphism such as complex conjugation. In particular, this generalization unifies the concepts of linear and conjugate-linear maps. We implement this generalization in Lean’s <span>mathlib</span> library, along with a number of important results in functional analysis which previously were impossible to formalize properly. Specifically, we prove the Fréchet–Riesz representation theorem and the spectral theorem for compact self-adjoint operators generically over real and complex Hilbert spaces, additionally developing the Fourier theory needed to state and prove Parseval’s identity. We also show that semilinear maps have applications beyond functional analysis by formalizing the one-dimensional case of a theorem of Dieudonné and Manin that classifies the isocrystals over an algebraically closed field with positive characteristic.</p>","PeriodicalId":15082,"journal":{"name":"Journal of Automated Reasoning","volume":"67 1","pages":""},"PeriodicalIF":1.1,"publicationDate":"2024-06-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141252670","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Linear Resources in Isabelle/HOL","authors":"Filip Smola, Jacques D. Fleuriot","doi":"10.1007/s10817-024-09698-2","DOIUrl":"https://doi.org/10.1007/s10817-024-09698-2","url":null,"abstract":"<p>We present a formal framework for process composition based on actions that are specified by their input and output resources. The correctness of these compositions is verified by translating them into deductions in intuitionistic linear logic. As part of the verification we derive simple conditions on the compositions which ensure well-formedness of the corresponding deduction when satisfied. We mechanise the whole framework, including a deep embedding of ILL, in the proof assistant Isabelle/HOL. Beyond the increased confidence in our proofs, this allows us to automatically generate executable code for our verified definitions. We demonstrate our approach by formalising part of the simulation game Factorio and modelling a manufacturing process in it. Our framework guarantees that this model is free of bottlenecks.</p>","PeriodicalId":15082,"journal":{"name":"Journal of Automated Reasoning","volume":"11978 1","pages":""},"PeriodicalIF":1.1,"publicationDate":"2024-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141059948","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Michael Bernreiter, Anela Lolic, Jan Maly, Stefan Woltran
{"title":"Sequent Calculi for Choice Logics","authors":"Michael Bernreiter, Anela Lolic, Jan Maly, Stefan Woltran","doi":"10.1007/s10817-024-09695-5","DOIUrl":"https://doi.org/10.1007/s10817-024-09695-5","url":null,"abstract":"<p>Choice logics constitute a family of propositional logics and are used for the representation of preferences, with especially <i>qualitative choice logic</i> (QCL) being an established formalism with numerous applications in artificial intelligence. While computational properties and applications of choice logics have been studied in the literature, only few results are known about the proof-theoretic aspects of their use. We propose a sound and complete sequent calculus for preferred model entailment in QCL, where a formula <i>F</i> is entailed by a QCL-theory <i>T</i> if <i>F</i> is true in all preferred models of <i>T</i>. The calculus is based on labeled sequent and refutation calculi, and can be easily adapted for different purposes. For instance, using the calculus as a cornerstone, calculi for other choice logics such as <i>conjunctive choice logic</i> (CCL) and <i>lexicographic choice logic</i> (LCL) can be obtained in a straightforward way.</p>","PeriodicalId":15082,"journal":{"name":"Journal of Automated Reasoning","volume":"48 1","pages":""},"PeriodicalIF":1.1,"publicationDate":"2024-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140597974","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Schematic Program Proofs with Abstract Execution","authors":"","doi":"10.1007/s10817-023-09692-0","DOIUrl":"https://doi.org/10.1007/s10817-023-09692-0","url":null,"abstract":"<h3>Abstract</h3> <p>We propose <em>Abstract Execution</em>, a static verification framework based on symbolic execution and dynamic frames for proving properties of <em>schematic</em> programs. Since a schematic program may potentially represent infinitely many concrete programs, Abstract Execution can analyze infinitely many programs at once. Trading off expressiveness and automation, the framework allows proving many interesting (universal, behavioral) properties <em>fully automatically</em>. Its main application are correctness proofs of <em>program transformations</em> represented as pairs of schematic programs. We implemented Abstract Execution in a deductive verification framework and designed a graphical workbench supporting the modeling process. Abstract Execution has been applied to correct code refactoring, analysis of the cost impact of transformation rules, and parallelization of sequential code. Using our framework, we found and reported several bugs in the refactoring engines of the <span>Java</span> IDEs IntelliJ IDEA and Eclipse, which were acknowledged and fixed.</p>","PeriodicalId":15082,"journal":{"name":"Journal of Automated Reasoning","volume":"53 1","pages":""},"PeriodicalIF":1.1,"publicationDate":"2024-03-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140313938","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}