English
Related papers

Related papers: Plotting in a Formally Verified Way

200 papers

The perimeter and area generating functions of exactly solvable polygon models satisfy q-functional equations, where q is the area variable. The behaviour in the vicinity of the point where the perimeter generating function diverges can…

Statistical Mechanics · Physics 2008-08-28 C. Richard , A. J. Guttmann

There have been some effective tools for solving (constant/parametric) semi-algebraic systems in Maple's library RegularChains since Maple 13. By using the functions of the library, e.g., RealRootClassfication, one can prove and discover…

Symbolic Computation · Computer Science 2013-06-19 Lu Yang , Bican Xia

Formal verification is a promising method for producing reliable software, but the difficulty of manually writing verification proofs severely limits its utility in practice. Recent methods have automated some proof synthesis by guiding a…

Software Engineering · Computer Science 2024-12-18 Alex Sanchez-Stern , Abhishek Varghese , Zhanna Kaufman , Dylan Zhang , Talia Ringer , Yuriy Brun

This report describes the state of the art in verifiable computation. The problem being solved is the following: The Verifiable Computation Problem (Verifiable Computing Problem) Suppose we have two computing agents. The first agent is the…

This work is a part of an ongoing effort to prove the correctness of invertibility conditions for the theory of fixed-width bit-vectors, which are used to solve quantified bit-vector formulas in the Satisfiability Modulo Theories (SMT)…

Logic in Computer Science · Computer Science 2019-08-27 Burak Ekici , Arjun Viswanathan , Yoni Zohar , Clark Barrett , Cesare Tinelli

An explicit algorithm is presented for testing whether two non-directed graphs are isomorphic or not. It is shown that for a graph of n vertices, the number of n independent operations needed for the test is polynomial in n. A proof that…

Data Structures and Algorithms · Computer Science 2007-05-23 Moshe Schwartz

Authenticated data structures allow untrusted third parties to carry out operations which produce proofs that can be used to verify an operation's output. Such data structures are challenging to develop and implement correctly. This paper…

Logic in Computer Science · Computer Science 2025-01-22 Simon Oddershede Gregersen , Chaitanya Agarwal , Joseph Tassarotti

Formally reasoning about functional programs is supposed to be straightforward and elegant, however, it is not typically done as a matter of course. Reasoning in a proof assistant requires "reimplementing" the code in those tools, which is…

Logic in Computer Science · Computer Science 2021-07-19 Laila El-Beheiry , Giselle Reis , Ammar Karkour

In this paper is proved that a complex algebraic function on complexification of a real algebraic curve is equivalent to real algebraic function, if and only if the divisor of preimage of critical values is stable under the involution of…

Algebraic Geometry · Mathematics 2008-09-29 S. M. Natanzon

We report on the development of an optimized and verified decision procedure for orthologic equalities and inequalities. This decision procedure is quadratic-time and is used as a sound, efficient and predictable approximation to classical…

Logic in Computer Science · Computer Science 2025-02-05 Simon Guilloud , Clément Pit-Claudel

We present a formalization of convex polyhedra in the proof assistant Coq. The cornerstone of our work is a complete implementation of the simplex method, together with the proof of its correctness and termination. This allows us to define…

Logic in Computer Science · Computer Science 2018-08-14 Xavier Allamigeon , Ricardo D. Katz

The goal of this lecture is to show how modern theorem provers---in this case, the Coq proof assistant---can be used to mechanize the specification of programming languages and their semantics, and to reason over individual programs and…

Programming Languages · Computer Science 2010-10-28 Xavier Leroy

Most formal methods see the correctness of a software system as a binary decision. However, proving the correctness of complex systems completely is difficult because they are composed of multiple components, usage scenarios, and…

Software Engineering · Computer Science 2024-01-26 Florian Lanzinger , Christian Martin , Frederik Reiche , Samuel Teuber , Robert Heinrich , Alexander Weigl

This report describes three particular technological advances in formal proofs. The HOL Light proof assistant will be used to illustrate the design of a highly reliable system. Today, proof assistants can verify large bodies of advanced…

Logic in Computer Science · Computer Science 2014-08-28 Thomas C. Hales

The present paper introduces Scala-of-Coq, a new compiler that allows a Coq-based synthesis of Scala programs which are "correct-by-construction". A typical workflow features a user implementing a Coq functional program, proving this…

Programming Languages · Computer Science 2017-06-19 Youssef El Bakouny , Tristan Crolard , Dani Mezher

Integration, just as much as differentiation, is a fundamental calculus tool that is widely used in many scientific domains. Formalizing the mathematical concept of integration and the associated results in a formal proof assistant helps in…

Logic in Computer Science · Computer Science 2021-12-10 Sylvie Boldo , François Clément , Florian Faissole , Vincent Martin , Micaela Mayero

We report on implementing graph grammars for intelligence analysis in OCaml. Graph grammars are represented as elements of an algebraic data type in OCaml. In addition to algebraic data types, we use other concepts from functional…

Programming Languages · Computer Science 2016-06-06 Rod Moten , Kemafor Anyanwu-Ogan , Sahibi Miranshah

Development of Interactive Theorem Provers has led to the creation of big libraries and varied infrastructures for formal proofs. However, despite (or perhaps due to) their sophistication, the re-use of libraries by non-experts or across…

Artificial Intelligence · Computer Science 2014-03-10 Jónathan Heras , Ekaterina Komendantskaya

In this work, we describe our experience in learning the use of a computer proof assistant - specifically, Lean - from scratch, through proving formulae for the solutions of polynomial equations. Specifically, in this work we characterize…

Logic in Computer Science · Computer Science 2022-01-04 Nicholas Dyson , Benedikt Ahrens , Jacopo Emmenegger

Floating point operations are fast, but require continuous effort on the part of the user in order to ensure that the results are correct. This burden can be shifted away from the user by providing a library of exact analysis in which the…

Logic in Computer Science · Computer Science 2019-03-14 Robbert Krebbers , Bas Spitters