Serveur d'exploration sur la recherche en informatique en Lorraine

Attention, ce site est en cours de développement !
Attention, site généré par des moyens informatiques à partir de corpus bruts.
Les informations ne sont donc pas validées.

A proof of GMP square root using the Coq assistant

Identifieur interne : 005A59 ( Hal/Checkpoint ); précédent : 005A58; suivant : 005A60

A proof of GMP square root using the Coq assistant

Auteurs : Yves Bertot [France] ; Nicolas Magaud [France] ; Paul Zimmermann [France]

Source :

RBID : Hal:inria-00072113

English descriptors

Abstract

We present a formal proof (at the implementation level) of an efficient algorithm proposed in to compute square roots of arbitrarily large integers. This program, which is part of the GNU Multiple Precision Arithmetic Library (GMP), is completely proven within the system. Proofs are developed using the Correctness tool to deal with imperative features of the program. The formalization is rather large (more than 13000 lines) and requires some advanced techniques for proof management and reuse.

Url:

Links toward previous steps (curation, corpus...)


Links to Exploration step

Hal:inria-00072113

Le document en format XML

<record>
<TEI>
<teiHeader>
<fileDesc>
<titleStmt>
<title xml:lang="en">A proof of GMP square root using the Coq assistant</title>
<author>
<name sortKey="Bertot, Yves" sort="Bertot, Yves" uniqKey="Bertot Y" first="Yves" last="Bertot">Yves Bertot</name>
<affiliation wicri:level="1">
<hal:affiliation type="researchteam" xml:id="struct-2464" status="VALID">
<idno type="RNSR">199221442W</idno>
<orgName>Software and mathematics</orgName>
<orgName type="acronym">LEMME</orgName>
<desc>
<address>
<country key="FR"></country>
</address>
</desc>
<listRelation>
<relation active="#struct-34586" type="direct"></relation>
<relation active="#struct-300009" type="indirect"></relation>
</listRelation>
<tutelles>
<tutelle active="#struct-34586" type="direct">
<org type="laboratory" xml:id="struct-34586" status="VALID">
<idno type="RNSR">198318250R</idno>
<orgName>Inria Sophia Antipolis - Méditerranée </orgName>
<orgName type="acronym">CRISAM</orgName>
<desc>
<address>
<addrLine>2004 route des Lucioles BP 93 06902 Sophia Antipolis</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/centre/sophia/</ref>
</desc>
<listRelation>
<relation active="#struct-300009" type="direct"></relation>
</listRelation>
</org>
</tutelle>
<tutelle active="#struct-300009" type="indirect">
<org type="institution" xml:id="struct-300009" status="VALID">
<orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
<orgName type="acronym">Inria</orgName>
<desc>
<address>
<addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/en/</ref>
</desc>
</org>
</tutelle>
</tutelles>
</hal:affiliation>
<country>France</country>
</affiliation>
</author>
<author>
<name sortKey="Magaud, Nicolas" sort="Magaud, Nicolas" uniqKey="Magaud N" first="Nicolas" last="Magaud">Nicolas Magaud</name>
<affiliation wicri:level="1">
<hal:affiliation type="researchteam" xml:id="struct-2464" status="VALID">
<idno type="RNSR">199221442W</idno>
<orgName>Software and mathematics</orgName>
<orgName type="acronym">LEMME</orgName>
<desc>
<address>
<country key="FR"></country>
</address>
</desc>
<listRelation>
<relation active="#struct-34586" type="direct"></relation>
<relation active="#struct-300009" type="indirect"></relation>
</listRelation>
<tutelles>
<tutelle active="#struct-34586" type="direct">
<org type="laboratory" xml:id="struct-34586" status="VALID">
<idno type="RNSR">198318250R</idno>
<orgName>Inria Sophia Antipolis - Méditerranée </orgName>
<orgName type="acronym">CRISAM</orgName>
<desc>
<address>
<addrLine>2004 route des Lucioles BP 93 06902 Sophia Antipolis</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/centre/sophia/</ref>
</desc>
<listRelation>
<relation active="#struct-300009" type="direct"></relation>
</listRelation>
</org>
</tutelle>
<tutelle active="#struct-300009" type="indirect">
<org type="institution" xml:id="struct-300009" status="VALID">
<orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
<orgName type="acronym">Inria</orgName>
<desc>
<address>
<addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/en/</ref>
</desc>
</org>
</tutelle>
</tutelles>
</hal:affiliation>
<country>France</country>
</affiliation>
</author>
<author>
<name sortKey="Zimmermann, Paul" sort="Zimmermann, Paul" uniqKey="Zimmermann P" first="Paul" last="Zimmermann">Paul Zimmermann</name>
<affiliation wicri:level="1">
<hal:affiliation type="researchteam" xml:id="struct-2364" status="OLD">
<idno type="RNSR">200221401H</idno>
<orgName>Solving problems through algebraic computation and efficient software</orgName>
<orgName type="acronym">SPACES</orgName>
<desc>
<address>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/equipes/spaces</ref>
</desc>
<listRelation>
<relation active="#struct-160" type="direct"></relation>
<relation name="UMR7503" active="#struct-441569" type="indirect"></relation>
<relation active="#struct-300009" type="indirect"></relation>
<relation active="#struct-300291" type="indirect"></relation>
<relation active="#struct-300292" type="indirect"></relation>
<relation active="#struct-300293" type="indirect"></relation>
<relation active="#struct-2496" type="direct"></relation>
</listRelation>
<tutelles>
<tutelle active="#struct-160" type="direct">
<org type="laboratory" xml:id="struct-160" status="OLD">
<orgName>Laboratoire Lorrain de Recherche en Informatique et ses Applications</orgName>
<orgName type="acronym">LORIA</orgName>
<desc>
<address>
<addrLine>Campus Scientifique BP 239 54506 Vandoeuvre-lès-Nancy Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.loria.fr</ref>
</desc>
<listRelation>
<relation name="UMR7503" active="#struct-441569" type="direct"></relation>
<relation active="#struct-300009" type="direct"></relation>
<relation active="#struct-300291" type="direct"></relation>
<relation active="#struct-300292" type="direct"></relation>
<relation active="#struct-300293" type="direct"></relation>
</listRelation>
</org>
</tutelle>
<tutelle name="UMR7503" active="#struct-441569" type="indirect">
<org type="institution" xml:id="struct-441569" status="VALID">
<idno type="ISNI">0000000122597504</idno>
<idno type="IdRef">02636817X</idno>
<orgName>Centre National de la Recherche Scientifique</orgName>
<orgName type="acronym">CNRS</orgName>
<date type="start">1939-10-19</date>
<desc>
<address>
<country key="FR"></country>
</address>
<ref type="url">http://www.cnrs.fr/</ref>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300009" type="indirect">
<org type="institution" xml:id="struct-300009" status="VALID">
<orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
<orgName type="acronym">Inria</orgName>
<desc>
<address>
<addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/en/</ref>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300291" type="indirect">
<org type="institution" xml:id="struct-300291" status="OLD">
<orgName>Université Henri Poincaré - Nancy 1</orgName>
<orgName type="acronym">UHP</orgName>
<date type="end">2011-12-31</date>
<desc>
<address>
<addrLine>24-30 rue Lionnois, BP 60120, 54 003 NANCY cedex, France</addrLine>
<country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300292" type="indirect">
<org type="institution" xml:id="struct-300292" status="OLD">
<orgName>Université Nancy 2</orgName>
<date type="end">2011-12-31</date>
<desc>
<address>
<addrLine>91 avenue de la Libération, BP 454, 54001 Nancy cedex</addrLine>
<country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300293" type="indirect">
<org type="institution" xml:id="struct-300293" status="OLD">
<orgName>Institut National Polytechnique de Lorraine</orgName>
<orgName type="acronym">INPL</orgName>
<date type="end">2011-12-31</date>
<desc>
<address>
<country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-2496" type="direct">
<org type="laboratory" xml:id="struct-2496" status="OLD">
<orgName>INRIA Lorraine</orgName>
<desc>
<address>
<addrLine>615 rue du Jardin Botanique 54600 Villers-lès-Nancy</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/centre-de-recherche-inria/nancy-grand-est</ref>
</desc>
<listRelation>
<relation active="#struct-300009" type="direct"></relation>
</listRelation>
</org>
</tutelle>
</tutelles>
</hal:affiliation>
<country>France</country>
<placeName>
<settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="old region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="university">Université Nancy 2</orgName>
<orgName type="institution" wicri:auto="newGroup">Université de Lorraine</orgName>
<placeName>
<settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="old region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="university">Institut national polytechnique de Lorraine</orgName>
<orgName type="institution" wicri:auto="newGroup">Université de Lorraine</orgName>
</affiliation>
</author>
</titleStmt>
<publicationStmt>
<idno type="wicri:source">HAL</idno>
<idno type="RBID">Hal:inria-00072113</idno>
<idno type="halId">inria-00072113</idno>
<idno type="halUri">https://hal.inria.fr/inria-00072113</idno>
<idno type="url">https://hal.inria.fr/inria-00072113</idno>
<date when="2002">2002</date>
<idno type="wicri:Area/Hal/Corpus">000838</idno>
<idno type="wicri:Area/Hal/Curation">000838</idno>
<idno type="wicri:Area/Hal/Checkpoint">005A59</idno>
<idno type="wicri:explorRef" wicri:stream="Hal" wicri:step="Checkpoint">005A59</idno>
</publicationStmt>
<sourceDesc>
<biblStruct>
<analytic>
<title xml:lang="en">A proof of GMP square root using the Coq assistant</title>
<author>
<name sortKey="Bertot, Yves" sort="Bertot, Yves" uniqKey="Bertot Y" first="Yves" last="Bertot">Yves Bertot</name>
<affiliation wicri:level="1">
<hal:affiliation type="researchteam" xml:id="struct-2464" status="VALID">
<idno type="RNSR">199221442W</idno>
<orgName>Software and mathematics</orgName>
<orgName type="acronym">LEMME</orgName>
<desc>
<address>
<country key="FR"></country>
</address>
</desc>
<listRelation>
<relation active="#struct-34586" type="direct"></relation>
<relation active="#struct-300009" type="indirect"></relation>
</listRelation>
<tutelles>
<tutelle active="#struct-34586" type="direct">
<org type="laboratory" xml:id="struct-34586" status="VALID">
<idno type="RNSR">198318250R</idno>
<orgName>Inria Sophia Antipolis - Méditerranée </orgName>
<orgName type="acronym">CRISAM</orgName>
<desc>
<address>
<addrLine>2004 route des Lucioles BP 93 06902 Sophia Antipolis</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/centre/sophia/</ref>
</desc>
<listRelation>
<relation active="#struct-300009" type="direct"></relation>
</listRelation>
</org>
</tutelle>
<tutelle active="#struct-300009" type="indirect">
<org type="institution" xml:id="struct-300009" status="VALID">
<orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
<orgName type="acronym">Inria</orgName>
<desc>
<address>
<addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/en/</ref>
</desc>
</org>
</tutelle>
</tutelles>
</hal:affiliation>
<country>France</country>
</affiliation>
</author>
<author>
<name sortKey="Magaud, Nicolas" sort="Magaud, Nicolas" uniqKey="Magaud N" first="Nicolas" last="Magaud">Nicolas Magaud</name>
<affiliation wicri:level="1">
<hal:affiliation type="researchteam" xml:id="struct-2464" status="VALID">
<idno type="RNSR">199221442W</idno>
<orgName>Software and mathematics</orgName>
<orgName type="acronym">LEMME</orgName>
<desc>
<address>
<country key="FR"></country>
</address>
</desc>
<listRelation>
<relation active="#struct-34586" type="direct"></relation>
<relation active="#struct-300009" type="indirect"></relation>
</listRelation>
<tutelles>
<tutelle active="#struct-34586" type="direct">
<org type="laboratory" xml:id="struct-34586" status="VALID">
<idno type="RNSR">198318250R</idno>
<orgName>Inria Sophia Antipolis - Méditerranée </orgName>
<orgName type="acronym">CRISAM</orgName>
<desc>
<address>
<addrLine>2004 route des Lucioles BP 93 06902 Sophia Antipolis</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/centre/sophia/</ref>
</desc>
<listRelation>
<relation active="#struct-300009" type="direct"></relation>
</listRelation>
</org>
</tutelle>
<tutelle active="#struct-300009" type="indirect">
<org type="institution" xml:id="struct-300009" status="VALID">
<orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
<orgName type="acronym">Inria</orgName>
<desc>
<address>
<addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/en/</ref>
</desc>
</org>
</tutelle>
</tutelles>
</hal:affiliation>
<country>France</country>
</affiliation>
</author>
<author>
<name sortKey="Zimmermann, Paul" sort="Zimmermann, Paul" uniqKey="Zimmermann P" first="Paul" last="Zimmermann">Paul Zimmermann</name>
<affiliation wicri:level="1">
<hal:affiliation type="researchteam" xml:id="struct-2364" status="OLD">
<idno type="RNSR">200221401H</idno>
<orgName>Solving problems through algebraic computation and efficient software</orgName>
<orgName type="acronym">SPACES</orgName>
<desc>
<address>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/equipes/spaces</ref>
</desc>
<listRelation>
<relation active="#struct-160" type="direct"></relation>
<relation name="UMR7503" active="#struct-441569" type="indirect"></relation>
<relation active="#struct-300009" type="indirect"></relation>
<relation active="#struct-300291" type="indirect"></relation>
<relation active="#struct-300292" type="indirect"></relation>
<relation active="#struct-300293" type="indirect"></relation>
<relation active="#struct-2496" type="direct"></relation>
</listRelation>
<tutelles>
<tutelle active="#struct-160" type="direct">
<org type="laboratory" xml:id="struct-160" status="OLD">
<orgName>Laboratoire Lorrain de Recherche en Informatique et ses Applications</orgName>
<orgName type="acronym">LORIA</orgName>
<desc>
<address>
<addrLine>Campus Scientifique BP 239 54506 Vandoeuvre-lès-Nancy Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.loria.fr</ref>
</desc>
<listRelation>
<relation name="UMR7503" active="#struct-441569" type="direct"></relation>
<relation active="#struct-300009" type="direct"></relation>
<relation active="#struct-300291" type="direct"></relation>
<relation active="#struct-300292" type="direct"></relation>
<relation active="#struct-300293" type="direct"></relation>
</listRelation>
</org>
</tutelle>
<tutelle name="UMR7503" active="#struct-441569" type="indirect">
<org type="institution" xml:id="struct-441569" status="VALID">
<idno type="ISNI">0000000122597504</idno>
<idno type="IdRef">02636817X</idno>
<orgName>Centre National de la Recherche Scientifique</orgName>
<orgName type="acronym">CNRS</orgName>
<date type="start">1939-10-19</date>
<desc>
<address>
<country key="FR"></country>
</address>
<ref type="url">http://www.cnrs.fr/</ref>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300009" type="indirect">
<org type="institution" xml:id="struct-300009" status="VALID">
<orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
<orgName type="acronym">Inria</orgName>
<desc>
<address>
<addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/en/</ref>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300291" type="indirect">
<org type="institution" xml:id="struct-300291" status="OLD">
<orgName>Université Henri Poincaré - Nancy 1</orgName>
<orgName type="acronym">UHP</orgName>
<date type="end">2011-12-31</date>
<desc>
<address>
<addrLine>24-30 rue Lionnois, BP 60120, 54 003 NANCY cedex, France</addrLine>
<country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300292" type="indirect">
<org type="institution" xml:id="struct-300292" status="OLD">
<orgName>Université Nancy 2</orgName>
<date type="end">2011-12-31</date>
<desc>
<address>
<addrLine>91 avenue de la Libération, BP 454, 54001 Nancy cedex</addrLine>
<country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300293" type="indirect">
<org type="institution" xml:id="struct-300293" status="OLD">
<orgName>Institut National Polytechnique de Lorraine</orgName>
<orgName type="acronym">INPL</orgName>
<date type="end">2011-12-31</date>
<desc>
<address>
<country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-2496" type="direct">
<org type="laboratory" xml:id="struct-2496" status="OLD">
<orgName>INRIA Lorraine</orgName>
<desc>
<address>
<addrLine>615 rue du Jardin Botanique 54600 Villers-lès-Nancy</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/centre-de-recherche-inria/nancy-grand-est</ref>
</desc>
<listRelation>
<relation active="#struct-300009" type="direct"></relation>
</listRelation>
</org>
</tutelle>
</tutelles>
</hal:affiliation>
<country>France</country>
<placeName>
<settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="old region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="university">Université Nancy 2</orgName>
<orgName type="institution" wicri:auto="newGroup">Université de Lorraine</orgName>
<placeName>
<settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="old region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="university">Institut national polytechnique de Lorraine</orgName>
<orgName type="institution" wicri:auto="newGroup">Université de Lorraine</orgName>
</affiliation>
</author>
</analytic>
</biblStruct>
</sourceDesc>
</fileDesc>
<profileDesc>
<textClass>
<keywords scheme="mix" xml:lang="en">
<term>ARBITRARY LARGE NUMBERS</term>
<term>COQ</term>
<term>FORMAL METHODS</term>
<term>GMP</term>
</keywords>
</textClass>
</profileDesc>
</teiHeader>
<front>
<div type="abstract" xml:lang="en">We present a formal proof (at the implementation level) of an efficient algorithm proposed in to compute square roots of arbitrarily large integers. This program, which is part of the GNU Multiple Precision Arithmetic Library (GMP), is completely proven within the system. Proofs are developed using the Correctness tool to deal with imperative features of the program. The formalization is rather large (more than 13000 lines) and requires some advanced techniques for proof management and reuse.</div>
</front>
</TEI>
<hal api="V3">
<titleStmt>
<title xml:lang="en">A proof of GMP square root using the Coq assistant</title>
<author role="aut">
<persName>
<forename type="first">Yves</forename>
<surname>Bertot</surname>
</persName>
<email>Yves.Bertot@inria.fr</email>
<idno type="halauthor">63591</idno>
<affiliation ref="#struct-2464"></affiliation>
</author>
<author role="aut">
<persName>
<forename type="first">Nicolas</forename>
<surname>Magaud</surname>
</persName>
<email></email>
<idno type="halauthor">69200</idno>
<affiliation ref="#struct-2464"></affiliation>
</author>
<author role="aut">
<persName>
<forename type="first">Paul</forename>
<surname>Zimmermann</surname>
</persName>
<email></email>
<idno type="idhal">paul-zimmermann</idno>
<idno type="halauthor">60829</idno>
<affiliation ref="#struct-2364"></affiliation>
</author>
<editor role="depositor">
<persName>
<forename>Rapport De Recherche</forename>
<surname>Inria</surname>
</persName>
<email>rrrt-editeurs@inria.fr</email>
</editor>
</titleStmt>
<editionStmt>
<edition n="v1" type="current">
<date type="whenSubmitted">2006-05-23 19:49:22</date>
<date type="whenWritten">2002-06</date>
<date type="whenModified">2016-05-19 01:15:04</date>
<date type="whenReleased">2006-05-31 14:24:26</date>
<date type="whenProduced">2002</date>
<date type="whenEndEmbargoed">2006-05-23</date>
<ref type="file" target="https://hal.inria.fr/inria-00072113/document">
<date notBefore="2006-05-23"></date>
</ref>
<ref type="file" n="1" target="https://hal.inria.fr/inria-00072113/file/RR-4475.pdf">
<date notBefore="2006-05-23"></date>
</ref>
</edition>
<respStmt>
<resp>contributor</resp>
<name key="111068">
<persName>
<forename>Rapport De Recherche</forename>
<surname>Inria</surname>
</persName>
<email>rrrt-editeurs@inria.fr</email>
</name>
</respStmt>
</editionStmt>
<publicationStmt>
<distributor>CCSD</distributor>
<idno type="halId">inria-00072113</idno>
<idno type="halUri">https://hal.inria.fr/inria-00072113</idno>
<idno type="halBibtex">bertot:inria-00072113</idno>
<idno type="halRefHtml">[Research Report] RR-4475, INRIA. 2002</idno>
<idno type="halRef">[Research Report] RR-4475, INRIA. 2002</idno>
</publicationStmt>
<seriesStmt>
<idno type="stamp" n="INRIA">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
<idno type="stamp" n="INRIA-SOPHIA">INRIA Sophia Antipolis - Méditerranée</idno>
<idno type="stamp" n="INRIA-RRRT">Rapports de recherche et Technique de l'Inria</idno>
<idno type="stamp" n="CNRS">CNRS - Centre national de la recherche scientifique</idno>
<idno type="stamp" n="INPL">Institut National Polytechnique de Lorraine</idno>
<idno type="stamp" n="LORIA2">Publications du LORIA</idno>
<idno type="stamp" n="LORIA">LORIA - Laboratoire Lorrain de Recherche en Informatique et ses Applications</idno>
<idno type="stamp" n="INRIA-NANCY-GRAND-EST">INRIA Nancy - Grand Est</idno>
<idno type="stamp" n="UNIV-LORRAINE">Université de Lorraine</idno>
<idno type="stamp" n="INRIASO">INRIA-SOPHIA</idno>
<idno type="stamp" n="INRIA-LORRAINE">INRIA Nancy - Grand Est</idno>
<idno type="stamp" n="LABO-LORIA-SET" p="LORIA">LABO-LORIA-SET</idno>
<idno type="stamp" n="INRIA_TEST">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
</seriesStmt>
<notesStmt>
<note type="audience" n="0">Not set</note>
<note type="report" n="6">Research Report</note>
</notesStmt>
<sourceDesc>
<biblStruct>
<analytic>
<title xml:lang="en">A proof of GMP square root using the Coq assistant</title>
<author role="aut">
<persName>
<forename type="first">Yves</forename>
<surname>Bertot</surname>
</persName>
<email>Yves.Bertot@inria.fr</email>
<idno type="halAuthorId">63591</idno>
<affiliation ref="#struct-2464"></affiliation>
</author>
<author role="aut">
<persName>
<forename type="first">Nicolas</forename>
<surname>Magaud</surname>
</persName>
<idno type="halAuthorId">69200</idno>
<affiliation ref="#struct-2464"></affiliation>
</author>
<author role="aut">
<persName>
<forename type="first">Paul</forename>
<surname>Zimmermann</surname>
</persName>
<idno type="idHal">paul-zimmermann</idno>
<idno type="halAuthorId">60829</idno>
<affiliation ref="#struct-2364"></affiliation>
</author>
</analytic>
<monogr>
<idno type="reportNumber">RR-4475</idno>
<imprint>
<date type="datePub">2002</date>
</imprint>
<authority type="institution">INRIA</authority>
</monogr>
</biblStruct>
</sourceDesc>
<profileDesc>
<langUsage>
<language ident="en">English</language>
</langUsage>
<textClass>
<keywords scheme="author">
<term xml:lang="en">COQ</term>
<term xml:lang="en">GMP</term>
<term xml:lang="en">ARBITRARY LARGE NUMBERS</term>
<term xml:lang="en">FORMAL METHODS</term>
</keywords>
<classCode scheme="halDomain" n="info.info-oh">Computer Science [cs]/Other [cs.OH]</classCode>
<classCode scheme="halTypology" n="REPORT">Reports</classCode>
</textClass>
<abstract xml:lang="en">We present a formal proof (at the implementation level) of an efficient algorithm proposed in to compute square roots of arbitrarily large integers. This program, which is part of the GNU Multiple Precision Arithmetic Library (GMP), is completely proven within the system. Proofs are developed using the Correctness tool to deal with imperative features of the program. The formalization is rather large (more than 13000 lines) and requires some advanced techniques for proof management and reuse.</abstract>
</profileDesc>
</hal>
</record>

Pour manipuler ce document sous Unix (Dilib)

EXPLOR_STEP=$WICRI_ROOT/Wicri/Lorraine/explor/InforLorV4/Data/Hal/Checkpoint
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 005A59 | SxmlIndent | more

Ou

HfdSelect -h $EXPLOR_AREA/Data/Hal/Checkpoint/biblio.hfd -nk 005A59 | SxmlIndent | more

Pour mettre un lien sur cette page dans le réseau Wicri

{{Explor lien
   |wiki=    Wicri/Lorraine
   |area=    InforLorV4
   |flux=    Hal
   |étape=   Checkpoint
   |type=    RBID
   |clé=     Hal:inria-00072113
   |texte=   A proof of GMP square root using the Coq assistant
}}

Wicri

This area was generated with Dilib version V0.6.33.
Data generation: Mon Jun 10 21:56:28 2019. Site generation: Fri Feb 25 15:29:27 2022