Sun Logo


C++ Interval Arithmetic Programming Reference

Suntrademark Studio 8

817-5077-10



Contents

Tables

Code Samples

Before You Begin

Who Should Use This Book

How This Book Is Organized

What Is Not in This Book

Related Interval References

Online Resources

Typographic Conventions

Shell Prompts

Accessing Sun Studio Software and Man Pages

Accessing Compilers and Tools Documentation

Accessing Related Solaris Documentation

Resources for Developers

Contacting Sun Technical Support

Sending Your Comments

1. Using the Interval Arithmetic Library

1.1 What Is Interval Arithmetic?

1.2 C++ Interval Support Goal: Implementation Quality

1.2.1 Quality Interval Code

1.2.2 Narrow-Width Interval Results

1.2.3 Rapidly Executing Interval Code

1.2.4 Easy-to-Use Development Environment

1.2.5 The C++ Interval Class Compilation Interface

1.2.5.1 namespace SUNW_interval

1.2.5.2 Boolean Return Values

1.2.5.3 Input and Output

1.3 Writing Interval Code for C++

1.3.1 Hello Interval World

1.3.2 interval External Representations

1.3.3 Interval Declaration and Initialization

1.3.4 interval Input/Output

1.3.5 Single-Number Input/Output

1.3.6 Arithmetic Expressions

1.3.7 interval-Specific Functions

1.3.8 Interval Versions of Standard Functions

1.4 Code Development Tools

1.4.1 Debugging Support

2. C++ Interval Arithmetic Library Reference

2.1 Character Set Notation

2.1.1 String Representation of an Interval Constant (SRIC)

2.1.2 Internal Approximation

2.2 interval Constructor

2.2.1 interval Constructor Examples

2.3 interval Arithmetic Expressions

2.4 Operators and Functions

2.4.1 Arithmetic Operators +, -, *, /

2.4.2 Power Function pow(X,n) and pow(X,Y)

2.5 Set Theoretic Functions

2.5.1 Hull: X union Y or interval_hull(X,Y)

2.5.2 Intersection: XintersectionY or intersect(X,Y)

2.6 Set Relations

2.6.1 Disjoint: X intersectionY = empty set or disjoint(X,Y)

2.6.2 Element: r element Y or in(r,Y)

2.6.3 Interior: in_interior(X,Y)

2.6.4 Proper Subset: X proper subset Y or proper_subset(X,Y)

2.6.5 Proper Superset: X proper super set Y or proper_superset(X,Y)

2.6.6 Subset: X reflex subset Y or subset(X,Y)

2.6.7 Superset: X reflex super set Y or superset(X,Y)

2.7 Relational Functions

2.7.1 Interval Order Relations

2.7.2 Set Relational Functions

2.7.2.1 Set-equal: X = Y or seq(X,Y)

2.7.2.2 Set-greater-or-equal: sge(X,Y)

2.7.2.3 Set-greater: sgt(X,Y)

2.7.2.4 Set-less-or-equal: sle(X,Y)

2.7.2.5 Set-less: slt(X,Y)

2.7.2.6 Set-not-equal: or sne(X,Y)

2.7.3 Certainly Relational Functions

2.7.4 Possibly Relational Functions

2.8 Input and Output

2.8.1 Input

2.8.2 Single-Number Output

2.8.3 Single-Number Input/Output and Base Conversions

2.9 Mathematical Functions

2.9.1 Inverse Tangent Function atan2(Y,X)

2.9.2 Maximum: maximum(X1,X2)

2.9.3 Minimum: minimum(X1,X2)

2.9.4 Functions That Accept Interval Arguments

2.10 Interval Types and the Standard Template Library

2.11 nvector and nmatrix Template Classes

2.11.1 nvector<T> Class

2.11.2 nmatrix<T> Class

2.12 References

Glossary

Index