� ✁ ✂ ✄ � ✁ ☎ I N F O R M A T I K The diamond operator for real algebraic expressions Susanne Schmitt sschmitt@mpi-sb.mpg.de Max Planck Institut f¨ ur Informatik Saarbr¨ ucken The diamond operator for real algebraic expressions – p.1/5
� ✁ ✂ ✄ � ✁ ☎ The diamond operator I N F O R M A T I K Definition real algebraic expressions Sign computation separation bound sign computation Implementation Examples The diamond operator for real algebraic expressions – p.2/5
� ✁ ✂ ✄ � ✁ ☎ Definition I N F O R M A T I K Real algebraic numbers are all real numbers which are roots of polynomials with integral coefficients. The diamond operator for real algebraic expressions – p.3/5
� ☎ ✎ ✁ ✌ ✌ ✁✌ ✁ ✠ ✟ ✞ ✝ ✁ ✁ ✆ ✁ ✂ ✄ � ✁ ☎ ✄ Definition I N F O R M A T I K Real algebraic expressions are arithmetic expressions which are recursively built up from the integers, using the operations of , and , or the diamond operator �✂✁ . ✡☞☛ ✡☞✍ The diamond operator for real algebraic expressions – p.3/5
� ✌ ✎ ✟ ✠ ✎ ✎ ✁ ✌ ✁✌ ☛ ✂ ✁ ☛ ✡ ✁ ✁ ✡ ✁ ✄ � ✟ ✌ ✌ ✎ ✍ ✡ ✟ � ✌ ✌ ✟ � ✂ ✁ ☛ ✄ ✎ ✂ ✁ ✠ ☛ ✞ ✁ ✂ ✄ � ✁ ☎ ✄ ✁ ☎ ✁ ✆ ✝ ✞ ✟ ✠ ✟ ✎ ✌ ✟ ✁ ✁✌ ✎ ✌ ✡ Definition I N F O R M A T I K Real algebraic expressions are arithmetic expressions which are recursively built up from the integers, using the operations of , and , or the diamond operator �✂✁ . ✡☞☛ ✡☞✍ The value val is the real algebraic number defined by the expression. val is the -th smallest real root of ✡☞✍ the polynomial val val val ✡☞☛ ✡☞☛ The diamond operator for real algebraic expressions – p.3/5
� ✁ ✌ ✎ ✡ ✟ ✡ ✟ ☎ ✄ ✂ ✁ � ✎ ✡ ✟ � ✎ ✡ ✟ ✡ ☎ ✂ ✄ ✁ Sign computation I N F O R M A T I K A separation bound for a real algebraic expression is a positive real number sep such that val val ✎ ☎✝✆ sep The diamond operator for real algebraic expressions – p.4/5
� ✟ ✌ ✎ ✡ ✟ ✡ ✟ ☎ ✄ ✂ ✁ � ✎ ✁ ✡ ✁ ✎ ✡ ✟ ✡ ✂ ✄ ☎ � Sign computation I N F O R M A T I K A separation bound for a real algebraic expression is a positive real number sep such that val val ✎ ☎✝✆ sep (Burnikel, Funke, Mehlhorn, Schirra, S.: A Separation Bound for Real Algebraic Expressions, ESA’01) The diamond operator for real algebraic expressions – p.4/5
� ✆ ✁ ☎ ✂ ✁ ✎ ✡ ✟ � ☎ ☎ ✂ ✁ ☎ � ☎ ✁ ✎ ✡ ✟ ✂ ✝ ☎ ✝ � ✂ ✁ ✎ ✡ ✟ ✎ ✡ ✟ � � ✞ � ✞ ☎ ☎ ✎ ✡ ✟ ☎ ✄ ☎ ✄ ✂ ✡ ✟ ✡ ☎ ✟ ☎ ✁ ✎ � ✎ ✡ ✟ ✎ ✡ ✡ � ✁ ✌ ✄ ✂ � ✎ ✡ ✎ ✟ ✟ ✟ Sign computation I N F O R M A T I K A separation bound for a real algebraic expression is a positive real number sep such that val val ✎ ☎✝✆ sep Computation of sign val : Initialize an error bound . Compute with val . ✁✄✂ ✁✄✂ If , the sign of val is equal to the sign of . Otherwise, and hence val . If sep , then val . Else halve and repeat. The diamond operator for real algebraic expressions – p.4/5
� ✂ ✂ ✄ � ✁ ☎ ✁ Implementation I N F O R M A T I K leda_real: implement real algebraic root expressions. If a leda real is not a double , the expression is stored and an interval which contains the real algebraic number is computed. In most cases the sign of the real algebraic number can be determined using this interval approximation. If that is not possible, one repeats computing bigfloat approximations with gradually higher accuracy. If the separation bound is reached, the real algebraic number is . The diamond operator for real algebraic expressions – p.5/5
� ✁ ✂ ✄ � ✁ ☎ Implementation I N F O R M A T I K Interval approximation: Uspensky’s algorithm Bigfloat approximation: Newton method The diamond operator for real algebraic expressions – p.5/5
Recommend
More recommend