• DocumentCode
    968430
  • Title

    Kahan´s Algorithm for a Correct Discriminant Computation at Last Formally Proven

  • Author

    Boldo, Sylvie

  • Author_Institution
    INRIA Saclay-lle-de-France, Pare Orsay Univ.-ZAC des Vignes, Orsay
  • Volume
    58
  • Issue
    2
  • fYear
    2009
  • Firstpage
    220
  • Lastpage
    225
  • Abstract
    This article tackles Kahan´s algorithm to compute accurately the discriminant. This is a known difficult problem, and this algorithm leads to an error bounded by 2 ulps of the floating-point result. The proofs involved are long and tricky and even trickier than expected as the test involved may give a result different from the result of the same test without rounding. We give here the total demonstration of the validity of this algorithm, and we provide sufficient conditions to guarantee that neither overflow nor underflow will jeopardize the result. The IEEE-754 double-precision program is annotated using the Why platform and the proof obligations are done using the Coq automatic proof checker.
  • Keywords
    floating point arithmetic; Coq automatic proof checker; IEEE-754 double-precision program; Kahan algorithm; Why platform; correct discriminant computation; floating-point result; Drag; Error correction; Floating-point arithmetic; Linear systems; Mechanical systems; Programming profession; Roundoff errors; Springs; Sufficient conditions; Testing; Computer arithmetic; Coq.; Floating point; Formal methods; Verification; Why platform; discriminant; formal proof;
  • fLanguage
    English
  • Journal_Title
    Computers, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9340
  • Type

    jour

  • DOI
    10.1109/TC.2008.200
  • Filename
    4663057