Abstract
In this paper, we describe design principles for certified programs of fraction arithmetic over any domain with the greatest common divisor (GCD) function. This is a small part of the DoCon-A library of certified programs, which is designed by the author of this paper. In this system, programs include definitions of the corresponding mathematical notions and proofs for the main properties of the methods implemented. These proofs are checked by the compiler. A purely functional programming language Agda, which supports dependent types, is used. A technique to generate formal machine-checked proofs for a certain optimized method of fraction addition is described.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.REFERENCES
Meshveliani, S.D., On dependent types and intuitionism in programming mathematics, in Electronic library of Cornel University. http://arxiv.org/find/all:+Mechveliani/0/1/0/all/0/1 (2017).
Meshveliani, S.D., DoCon-A: A library of provable programs for computer algebra, 2015–2018. http://www.botik.ru/pub/local/Mechveliani/docon-A.
Mechveliani, S.D., Computer algebra with Haskell: Applying functional-categorial-'lazy' programming, Proc. Int. Workshop CAAP, Gerdt, V.P., Ed., Dubna, 2001, pp. 203–211.
Norell, U., Dependently typed programming in Agda, Adv. Funct. Program.,Lect. Notes Comput. Sci., Springer, 2008, vol. 5832, pp. 230–266.
Wikipedia, Agda. http://wiki.portal.chalmers.se/agda/pmwiki.php.
Curry, H.B. and Feys, R., Combinatory Logic, Amsterdam, 1958, vol. 1.
Howard, W.A., The formulae-as-types notion of construction, To H. B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism, Boston: Academic, 1980, pp. 479–490.
Markov, A.A., On constructive mathematics, Tr. Mat. Inst.im.V. A. Steklova, 1962, vol. 67, pp. 8–14.
Martin-Loef, P., Intuitionistic Type Theory, Bibliopolis, 1984.
van der Waerden, B.L., Algebra, Springer, 1971, vol. 1.
Knuth, D.E., The Art of Computer Programming, Addison-Wesley, 1969, vol. 2.
Jenks, R.D., Sutor, R.S., et al., Axiom: The Scientific Computation System, Springer, 1992.
Chlipala, A., Certified Programming with Dependent Types: A Pragmatic Introduction to the Coq Proof Assistant, MIT Press, 2013. http://adam.chlipala.net/cpdt.
de Moura, L., Kong, S., Avigad, J., van Doorn, F., and von Raumer, J., The Lean theorem prover, Proc. 25th Int. Conf. Automated Deduction (CADE), Berlin, 2015. https://leanprover.github.io/papers/system.pdf.
6. ACKNOWLEDGMENTS
The author is grateful to an unknown referee who pointed to the existence of the generalized Euclid’s lemma.
Funding
This work was supported by the Ministry of Science and Higher Education of the Russian Federation, project no. AAAA-A19-119020690043-9.
Author information
Authors and Affiliations
Corresponding author
Additional information
Translated by Yu. Kornienko
Rights and permissions
About this article
Cite this article
Meshveliani, S.D. On a Machine-Checked Proof for Fraction Arithmetic over a GCD Domain. Program Comput Soft 46, 110–119 (2020). https://doi.org/10.1134/S0361768820020073
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1134/S0361768820020073