Before You Begin

This manual documents the C++ interface to the C++ interval arithmetic library provided with the Sun Forte Developer C++ compilers.


Who Should Use This Book

This is a reference manual intended for programmers with a working knowledge of the C++ language, the Solaristrademark operating environment, and UNIX commands.


How This Book Is Organized

This book contains the following chapters:

Chapter 1 describes the C++ interval arithmetic support goals and provides code samples that interval programmers can use to quickly learn more about the C++ interval features. This chapter contains the essential information to get started writing interval code using C++.

Chapter 2 is a complete description of the C++ interval arithmetic library interface.

"Glossary" contains definitions of interval terms.


What Is Not in This Book

This book is not an introduction to intervals and does not contain derivations of the interval innovations included in the interval arithmetic C++ library. For a list of sources containing introductory interval information, see the Interval Arithmetic Readme.


Related Interval References

The interval literature is large and growing. Interval applications exist in various substantive fields. However, most interval books and journal articles either contain these algorithms, or are written for interval analysts who are developing new interval algorithms. There is not yet a book titled "Introduction to Intervals."

The Sun Forte Developer C++ compiler is not the only source of C++ support for intervals. Readers interested in other well known sources can refer to the following books:

For a list of technical reports that establish the foundation for the interval innovations implemented in class interval, see References. See the Interval Arithmetic Readme for the location of the online versions of these references.


Online Resources

Additional interval information is available at various web sites and by subscribing to email lists. For a list of online resources, refer to the Interval Arithmetic Readme.

Web Sites

A detailed bibliography and interval FAQ can be obtained online at the URLs listed in the Interval Arithmetic Readme.

Email

To discuss interval arithmetic issues or ask questions about using interval arithmetic, a mailing list has been constructed. Anyone can send questions to this list. Refer to the Interval Arithmetic Readme for instructions on how to subscribe to this mailing list.

To report a suspected interval error, send email to the following address:

sun-dp-comments@Sun.COM

Include the following text in the Subject line of the email message:

FORTEDEV "7.0 mm/dd/yy" Interval

where mm/dd/yy is the month, day, and year of the message.

Code Examples

All code examples in this book are contained in the following directory:

http://www.sun.com/forte/cplusplus/interval

The name of each file is cen-m.cc, where n is the chapter in which the example occurs and m is the number of the example. Additional interval examples are also provided in this directory.


Typographic Conventions

TABLE P-1 Typeface Conventions

Typeface or Symbol

Meaning

Example

AaBbCc123

Code samples, the names of commands, files, and directories; on-screen computer output

interval<double>("[4, 5]"))

AaBbCc123

What you type, contrasted with on-screen computer output

math% CC -xia test.cc

math% a.out

x = [2.0,3.0]

^c

Press the Control and c keys to terminate an application

a,b =? ^c

AaBbCc123

Placeholders for interval language elements

The interval affirmative order relational operators op element {lt, le, eq, ge, gt} are equivalent to the mathematical operators
op is an element of { <, <=, =, >=, >}.




Note - Examples use math% as the system prompt.



TABLE P-2 Code Conventions

Code Symbol

Meaning

Notation

Code Example

[ ]

Brackets contain arguments that are optional.

O[n]

O4, O

{ }

Braces contain a set of choices for required option.

d{y|n}

dy

|

The "pipe" or "bar" symbol separates arguments, only one of which may be chosen.

B{dynamic|static}

Bstatic

:

The colon, like the comma, is sometimes used to separate arguments.

Rdir[:dir]

R/local/libs:/U/a

...

The ellipsis indicates omission in a series.

xinline=f1[,...,fn]

xinline=alpha,dos



Shell Prompts

Shell

Prompt

C shell

%

Bourne shell and Korn shell

$

C shell, Bourne shell, and Korn shell superuser

#



Accessing Forte Developer Development Tools and Man Pages

The Forte Developer product components and man pages are not installed into the standard /usr/bin/ and /usr/share/man directories. To access the Forte Developer compilers and tools, you must have the Forte Developer component directory in your PATH environment variable. To access the Forte Developer man pages, you must have the Forte Developer man page directory in your MANPATH environment variable.

For more information about the PATH variable, see the csh(1), sh(1), and ksh(1) man pages. For more information about the MANPATH variable, see the man(1) man page. For more information about setting your PATH and MANPATH variables to access this Forte Developer release, see the installation guide or your system administrator.



Note - The information in this section assumes that your Forte Developer products are installed in the /opt directory. If your product software is not installed in the /opt directory, ask your system administrator for the equivalent path on your system.



Accessing Forte Developer Compilers and Tools

Use the steps below to determine whether you need to change your PATH variable to access the Forte Developer compilers and tools.


procedure icon  To Determine Whether You Need to Set Your PATH Environment Variable

1. Display the current value of the PATH variable by typing the following at a command prompt:

% echo $PATH

2. Review the output for a string of paths that contain /opt/SUNWspro/bin/.

If you find the path, your PATH variable is already set to access Forte Developer development tools. If you do not find the path, set your PATH environment variable by following the instructions in the next section.


procedure icon  To Set Your PATH Environment Variable to Enable Access to Forte Developer Compilers and Tools

1. If you are using the C shell, edit your home .cshrc file. If you are using the Bourne shell or Korn shell, edit your home .profile file.

2. Add the following to your PATH environment variable.

/opt/SUNWspro/bin

Accessing Forte Developer Man Pages

Use the following steps to determine whether you need to change your MANPATH variable to access the Forte Developer man pages.


procedure icon  To Determine Whether You Need to Set Your MANPATH Environment Variable

1. Request the dbx man page by typing the following at a command prompt:

% man dbx

2. Review the output, if any.

If the dbx(1) man page cannot be found or if the man page displayed is not for the current version of the software installed, follow the instructions in the next section for setting your MANPATH environment variable.


procedure icon  To Set Your MANPATH Environment Variable to Enable Access to Forte Developer Man Pages

1. If you are using the C shell, edit your home .cshrc file. If you are using the Bourne shell or Korn shell, edit your home .profile file.

2. Add the following to your MANPATH environment variable.

/opt/SUNWspro/man


Accessing Forte Developer Documentation

You can access Forte Developer product documentation at the following locations:

  • The product documentation is available from the documentation index installed with the product on your local system or network at /opt/SUNWspro/docs/index.html.
If your product software is not installed in the /opt directory, ask your system administrator for the equivalent path on your system.
  • Most manuals are available from the docs.sun.comsm web site. The following titles are available through your installed product only:
    • Standard C++ Library Class Reference
    • Standard C++ Library User's Guide
    • Tools.h++ Class Library Reference
    • Tools.h++ User's Guide

The docs.sun.com web site (http://docs.sun.com) enables you to read, print, and buy Sun Microsystems manuals through the Internet. If you cannot find a manual, see the documentation index installed with the product on your local system or network.



Note - Sun is not responsible for the availability of third-party web sites mentioned in this document and does not endorse and is not responsible or liable for any content, advertising, products, or other materials on or available from such sites or resources. Sun will not be responsible or liable for any damage or loss caused or alleged to be caused by or in connection with use of or reliance on any such content, goods, or services available on or through any such sites or resources.



Product Documentation in Accessible Formats

Forte Developer 7 product documentation is provided in accessible formats that are readable by assistive technologies for users with disabilities. You can find accessible versions of documentation as described in the following table. If your product software is not installed in the /opt directory, ask your system administrator for the equivalent path on your system.

Type of Documentation

Format and Location of Accessible Version

Manuals (except third-party manuals)

HTML at http://docs.sun.com

Third-party manuals:

  • Standard C++ Library Class Reference
  • Standard C++ Library User's Guide
  • Tools.h++ Class Library Reference
  • Tools.h++ User's Guide

HTML in the installed product through the documentation index at file:/opt/SUNWspro/docs/index.html

Readmes and man pages

HTML in the installed product through the documentation index at file:/opt/SUNWspro/docs/index.html

Release notes

Text file on the product CD at /cdrom/devpro_v10n1_sparc/release_notes.txt



Accessing Related Solaris Documentation

The following table describes related documentation that is available through the docs.sun.com web site.

Document Collection

Document Title

Description

Solaris Reference Manual Collection

See the titles of man page sections.

Provides information about the Solaris operating environment.

Solaris Software Developer Collection

Linker and Libraries Guide

Describes the operations of the Solaris link-editor and runtime linker.

Solaris Software Developer Collection

Multithreaded Programming Guide

Covers the POSIX and Solaris threads APIs, programming with synchronization objects, compiling multithreaded programs, and finding tools for multithreaded programs.



Sending Your Comments

Sun is interested in improving its documentation and welcomes your comments and suggestions. Email your comments to Sun at this address:

docfeedback@sun.com