The (near-)future IEEE 1788 standard for interval arithmetic - - PowerPoint PPT Presentation

the near future ieee 1788 standard for interval arithmetic
SMART_READER_LITE
LIVE PREVIEW

The (near-)future IEEE 1788 standard for interval arithmetic - - PowerPoint PPT Presentation

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion The (near-)future IEEE 1788 standard for interval arithmetic Nathalie Revol INRIA - Universit e de Lyon LIP (UMR 5668 CNRS - ENS Lyon -


slide-1
SLIDE 1

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

The (near-)future IEEE 1788 standard for interval arithmetic

Nathalie Revol INRIA - Universit´ e de Lyon LIP (UMR 5668 CNRS - ENS Lyon - INRIA - UCBL)

SWIM 2015: 8th Small Workshop in Interval Methods Prague, 9-11 June 2015

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-2
SLIDE 2

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

Agenda

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations Conclusion

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-3
SLIDE 3

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

Agenda

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations Conclusion

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-4
SLIDE 4

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

Precious features

◮ Fundamental theorem of interval arithmetic (“Thou shalt

not lie”): the returned result contains the sought result;

◮ Brouwer theorem: proof of existence (and uniqueness) of a

solution;

◮ ad hoc division: gap between two semi-infinite intervals is

preserved. Goal of a standardization: keep the nice properties, have common definitions. Creation of the IEEE P1788 project: Initiated by 15 attenders at Dagstuhl, Jan 2008. Project authorised as IEEE-WG-P1788, Jun 2008. Deadline: Oct 2015.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-5
SLIDE 5

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

Precious features

◮ Fundamental theorem of interval arithmetic (“Thou shalt

not lie”): the returned result contains the sought result;

◮ Brouwer theorem: proof of existence (and uniqueness) of a

solution;

◮ ad hoc division: gap between two semi-infinite intervals is

preserved. Goal of a standardization: keep the nice properties, have common definitions. Creation of the IEEE P1788 project: Initiated by 15 attenders at Dagstuhl, Jan 2008. Project authorised as IEEE-WG-P1788, Jun 2008. Deadline: Oct 2015.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-6
SLIDE 6

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

Precious features

◮ Fundamental theorem of interval arithmetic (“Thou shalt

not lie”): the returned result contains the sought result;

◮ Brouwer theorem: proof of existence (and uniqueness) of a

solution;

◮ ad hoc division: gap between two semi-infinite intervals is

preserved. Goal of a standardization: keep the nice properties, have common definitions. Creation of the IEEE P1788 project: Initiated by 15 attenders at Dagstuhl, Jan 2008. Project authorised as IEEE-WG-P1788, Jun 2008. Deadline: Oct 2015.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-7
SLIDE 7

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Agenda

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations Conclusion

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-8
SLIDE 8

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Flavors: Moore’s classic IA

Only non-empty and bounded intervals. Adopted as the common basis for all flavors, but limited because useful intervals are missing.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-9
SLIDE 9

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Flavors: Moore’s classic IA

Only non-empty and bounded intervals. Adopted as the common basis for all flavors, but limited because useful intervals are missing.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-10
SLIDE 10

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Flavors: set-based IA

Also allows unbounded intervals and empty set. Very famous theory, sound. Adopted: the only flavor currently defined in the standard.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-11
SLIDE 11

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Flavors: set-based IA

Also allows unbounded intervals and empty set. Very famous theory, sound. Adopted: the only flavor currently defined in the standard.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-12
SLIDE 12

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Flavors: set-based IA

Also allows unbounded intervals and empty set. Very famous theory, sound. Adopted: the only flavor currently defined in the standard.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-13
SLIDE 13

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Flavors: Kaucher, modal

[1, 2] and [2, 1] are allowed. Unbounded intervals are not permitted. Hook provided, but theory still missing. Hopefully, it will be added in the revision of the standard, in 2025!

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-14
SLIDE 14

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Flavors: Kaucher, modal

[1, 2] and [2, 1] are allowed. Unbounded intervals are not permitted. Hook provided, but theory still missing. Hopefully, it will be added in the revision of the standard, in 2025!

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-15
SLIDE 15

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Flavors: Kaucher, modal

[1, 2] and [2, 1] are allowed. Unbounded intervals are not permitted. Hook provided, but theory still missing. Hopefully, it will be added in the revision of the standard, in 2025!

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-16
SLIDE 16

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Flavors: cset. . .

Cset: 1/[0, 1] = R. Conservative:

  • [−2, 1] = NaI?

Discussed, alluded to, apparently cset is being

  • developed. . . concurrently.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-17
SLIDE 17

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Flavors: cset. . .

Cset: 1/[0, 1] = R. Conservative:

  • [−2, 1] = NaI?

Discussed, alluded to, apparently cset is being

  • developed. . . concurrently.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-18
SLIDE 18

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-19
SLIDE 19

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

  • bjects

representation (no mid−rad...) constructors LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-20
SLIDE 20

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

  • bjects

representation (no mid−rad...) constructors LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

  • perations

arithmetic setinterval

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-21
SLIDE 21

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

  • bjects

representation (no mid−rad...) constructors

predicates

comparisons LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

  • perations

arithmetic setinterval

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-22
SLIDE 22

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

  • bjects

representation (no mid−rad...) constructors

predicates

comparisons LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

  • perations

arithmetic setinterval representation

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-23
SLIDE 23

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

  • bjects

representation (no mid−rad...) constructors

predicates

comparisons LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

  • perations

arithmetic setinterval representation link with IEEE−754

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-24
SLIDE 24

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

  • bjects

representation (no mid−rad...) constructors

predicates

comparisons LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

  • perations

arithmetic setinterval representation interchange link with IEEE−754

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-25
SLIDE 25

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

  • bjects

representation (no mid−rad...) constructors handling in a programming language (constructors...)

predicates

comparisons LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

  • perations

arithmetic setinterval representation interchange link with IEEE−754

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-26
SLIDE 26

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

link with IEEE−754 representation (no mid−rad...) constructors

  • perations

arithmetic+exceptions setinterval handling in a programming language (constructors...)

predicates

comparisons LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation representation interchange exceptions

  • bjects

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-27
SLIDE 27

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

I/O representation (no mid−rad...) constructors

  • perations

arithmetic+exceptions setinterval handling in a programming language (constructors...)

predicates

comparisons LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation representation interchange exceptions link with IEEE−754

  • bjects

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-28
SLIDE 28

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

I/O representation (no mid−rad...) constructors

  • perations

arithmetic+exceptions setinterval handling in a programming language (constructors...)

predicates

comparisons modal (Kaucher) set flavours LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation representation interchange exceptions link with IEEE−754

  • bjects

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-29
SLIDE 29

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

(constructors...) arithmetic+exceptions setinterval

predicates

comparisons modal (Kaucher) set flavours LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation representation interchange exceptions link with IEEE−754 I/O

  • bjects

representation (no mid−rad...) constructors handling in a programming language

  • perations

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-30
SLIDE 30

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: intervals

Representation (some intervals, like ∅ in the set-based flavor, may need a special representation):

◮ adopted representation: by the bounds (inf-sup); ◮ uncertain form: value ± ulp-count and optional direction.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-31
SLIDE 31

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

interval comparisons modal (Kaucher) set flavours LEVEL4 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

  • bjects

representation (no mid−rad...) constructors handling in a programming language (constructors...) exceptions I/O representation interchange link with IEEE−754

  • perations

arithmetic+exceptions set

predicates Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-32
SLIDE 32

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: arithmetic operations

At level 1:

◮ +, −, ×: everybody agrees ◮ /: [2, 3]/[−1, 2]: 2 semi-infinites, R?

R for closedness (in set-based flavor)

[−1, 2]? [0, √ 2]. no NaI but exceptional condition. At level 2: no NaI but exceptional condition.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-33
SLIDE 33

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: arithmetic operations

At level 1:

◮ +, −, ×: everybody agrees ◮ /: [2, 3]/[−1, 2]: 2 semi-infinites, R?

R for closedness (in set-based flavor)

[−1, 2]? [0, √ 2]. no NaI but exceptional condition. At level 2: no NaI but exceptional condition.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-34
SLIDE 34

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: arithmetic operations

At level 1:

◮ +, −, ×: everybody agrees ◮ /: [2, 3]/[−1, 2]: 2 semi-infinites, R?

R for closedness (in set-based flavor)

[−1, 2]? [0, √ 2]. no NaI but exceptional condition. At level 2: no NaI but exceptional condition.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-35
SLIDE 35

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: arithmetic operations

At level 1:

◮ +, −, ×: everybody agrees ◮ /: [2, 3]/[−1, 2]: 2 semi-infinites, R?

R for closedness (in set-based flavor)

[−1, 2]? [0, √ 2]. no NaI but exceptional condition. At level 2: no NaI but exceptional condition.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-36
SLIDE 36

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: arithmetic operations

At level 1:

◮ +, −, ×: everybody agrees ◮ /: [2, 3]/[−1, 2]: 2 semi-infinites, R?

R for closedness (in set-based flavor)

[−1, 2]? [0, √ 2]. no NaI but exceptional condition. At level 2: no NaI but exceptional condition.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-37
SLIDE 37

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: operations on intervals

Example: midpoint What is the midpoint of

◮ R?

0?

◮ [2, +∞)?

MaxReal in F? (at Level 2)

◮ ∅?

???: undefined at Level 1, NaN at Level 2.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-38
SLIDE 38

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: operations on intervals

Example: midpoint What is the midpoint of

◮ R?

0?

◮ [2, +∞)?

MaxReal in F? (at Level 2)

◮ ∅?

???: undefined at Level 1, NaN at Level 2.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-39
SLIDE 39

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: operations on intervals

Example: midpoint What is the midpoint of

◮ R?

0?

◮ [2, +∞)?

MaxReal in F? (at Level 2)

◮ ∅?

???: undefined at Level 1, NaN at Level 2.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-40
SLIDE 40

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: operations on intervals

Example: midpoint What is the midpoint of

◮ R?

0?

◮ [2, +∞)?

MaxReal in F? (at Level 2)

◮ ∅?

???: undefined at Level 1, NaN at Level 2.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-41
SLIDE 41

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: operations on intervals

Example: midpoint What is the midpoint of

◮ R?

0?

◮ [2, +∞)?

MaxReal in F? (at Level 2)

◮ ∅?

???: undefined at Level 1, NaN at Level 2.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-42
SLIDE 42

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: operations on intervals

Example: midpoint What is the midpoint of

◮ R?

0?

◮ [2, +∞)?

MaxReal in F? (at Level 2)

◮ ∅?

???: undefined at Level 1, NaN at Level 2.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-43
SLIDE 43

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: operations on intervals

Example: midpoint What is the midpoint of

◮ R?

0?

◮ [2, +∞)?

MaxReal in F? (at Level 2)

◮ ∅?

???: undefined at Level 1, NaN at Level 2.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-44
SLIDE 44

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

comparisons bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

  • bjects

representation (no mid−rad...) constructors handling in a programming language (constructors...) interval set arithmetic+exceptions

  • perations

exceptions I/O representation interchange link with IEEE−754 flavours set modal (Kaucher) predicates LEVEL4

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-45
SLIDE 45

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

  • bjects

representation (no mid−rad...) constructors handling in a programming language (constructors...) interval set arithmetic+exceptions

  • perations

predicates comparisons exceptions I/O representation interchange link with IEEE−754 flavours set LEVEL4 modal (Kaucher) bits

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-46
SLIDE 46

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788: exception raised by a constructor

On the mathematical model & implementation sides: nums2interval(2,1), i.e. {x ∈ R | 2 ≤ x ≤ 1}? Empty? Exception (error)? Notion of Not-an-Interval (“NaI”)? The revenge of the NaI! (in set-based flavor). Meaningful in Kaucher arithmetic: let this possibility open.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-47
SLIDE 47

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788: exception raised by a constructor

On the mathematical model & implementation sides: nums2interval(2,1), i.e. {x ∈ R | 2 ≤ x ≤ 1}? Empty? Exception (error)? Notion of Not-an-Interval (“NaI”)? The revenge of the NaI! (in set-based flavor). Meaningful in Kaucher arithmetic: let this possibility open.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-48
SLIDE 48

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788: exception raised by a constructor

On the mathematical model & implementation sides: nums2interval(2,1), i.e. {x ∈ R | 2 ≤ x ≤ 1}? Empty? Exception (error)? Notion of Not-an-Interval (“NaI”)? The revenge of the NaI! (in set-based flavor). Meaningful in Kaucher arithmetic: let this possibility open.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-49
SLIDE 49

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788: exception raised by a constructor

On the mathematical model & implementation sides: nums2interval(2,1), i.e. {x ∈ R | 2 ≤ x ≤ 1}? Empty? Exception (error)? Notion of Not-an-Interval (“NaI”)? The revenge of the NaI! (in set-based flavor). Meaningful in Kaucher arithmetic: let this possibility open.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-50
SLIDE 50

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: exception handling

Exceptions must be handled in some way, even if exceptions do

  • look. . . exceptional. (It must have been the same for exception

handling in IEEE-754 floating-point arithmetic.) Best way to handle exceptions? To avoid global flags, “tags” attached to each interval: decorations. Decorated intervals Discussions about what should be in the decorations. For common intervals: com for common. For set-based flavor: com for common, dac for defined and continuous, def for defined, trv for no information, ill for nowhere defined.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-51
SLIDE 51

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788: arguments outside the domain

How should f (x) be handled when x is not included in the domain

  • f f ? E.g.
  • [−1, 2]?

◮ exit? ◮ return NaI (Not an Interval)? Ie. handle exceptional values

such as NaI and infinities?

◮ return the set of every possible limits limy→x f (y) for every

possible x in the domain of f (but not necessarily y)?

◮ intersect x with the domain of f prior to the computation,

silently?

◮ intersect x with the domain of f prior to the computation and

mention it

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-52
SLIDE 52

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Remark: arguments outside the domain

(Rump, Dagstuhl seminar 09471, 2009)

f (x) = |x − 1| g(x) = (√x − 1)2 I know, it is not the best way of writing it. . . What happens if x = [0, 1]? f (x) = [0, 1] g(x) = [0] Without exception handling, the Thou shalt not lie principle is not valid. One has to check whether there has been a possibly undefined

  • peration. . . Unexperienced programmers will not do it.

In other words, it is not possible to protect people from getting wrong results, however hard we try.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-53
SLIDE 53

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Remark: arguments outside the domain

(Rump, Dagstuhl seminar 09471, 2009)

f (x) = |x − 1| g(x) = (√x − 1)2 I know, it is not the best way of writing it. . . What happens if x = [0, 1]? f (x) = [0, 1] g(x) = [0] Without exception handling, the Thou shalt not lie principle is not valid. One has to check whether there has been a possibly undefined

  • peration. . . Unexperienced programmers will not do it.

In other words, it is not possible to protect people from getting wrong results, however hard we try.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-54
SLIDE 54

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

IEEE-1788 standard: the big picture

exceptions arithmetic+exceptions

  • perations

flavours set modal (Kaucher) interval set

  • bjects

representation (no mid−rad...) constructors handling in a programming language (constructors...) predicates comparisons LEVEL4 I/O representation interchange link with IEEE−754 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-55
SLIDE 55

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Another hot topic: EDP

EDP means Exact Dot Product. EDP = computing exactly the dot product of two floating-point vectors. Either in hardware or in software. Recommended.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-56
SLIDE 56

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations

Another hot topic: EDP

EDP means Exact Dot Product. EDP = computing exactly the dot product of two floating-point vectors. Either in hardware or in software. Recommended.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-57
SLIDE 57

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

Agenda

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Flavors Overview of the IEEE-1788 standard Intervals Operations Predicates Exceptions and decorations Conclusion

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-58
SLIDE 58

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

Existing reference implementations

libieee1788 by Marco Nehmeier, set-based flavor, in C++, based on MPFR. interval 0.1.5 by Oliver Heimlich, in GNU Octave.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-59
SLIDE 59

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

The title of the talk was The (near-)future IEEE 1788 standard for interval arithmetic The news are:

◮ the final draft of the standard has gone through the final

approval stage June 5 (last Friday);

◮ the standard should be published July 11.

Future work:

◮ IEEE-1788.1 ”Standard for Interval Arithmetic (Simplified)”

has been approved January 30: Ned Nedialkov is in charge

◮ IEEE 754-2008 ”Standard for Binary Floating-Point

Arithmetic” (also includes decimal arithmetic) expires in 2018: it is time to start the revision process.

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-60
SLIDE 60

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

IEEE-1788 standard: the big picture

exceptions arithmetic+exceptions

  • perations

flavours set modal (Kaucher) interval set

  • bjects

representation (no mid−rad...) constructors handling in a programming language (constructors...) predicates comparisons LEVEL4 I/O representation interchange link with IEEE−754 bits LEVEL1 mathematics LEVEL2 implementation

  • r discretization

LEVEL3 computer representation

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic

slide-61
SLIDE 61

Interval arithmetic: standardization Standardization of interval arithmetic: IEEE P1788 Conclusion

IEEE-1788 standard: the original project

P1788 Scope: “This standard specifies basic interval arithmetic (IA) operations selecting and following one of the commonly used mathematical interval models. This standard supports the IEEE-754/2008 floating point types of practical use in interval

  • computations. Exception conditions will be defined and standard

handling of these conditions will be specified. Consistency with the model is tempered with practical considerations based on input from representatives of vendors and owners of existing systems. The standard provides a layer between the hardware and the programming language levels. It does not mandate that any

  • perations be implemented in hardware. It does not define any

realization of the basic operations as functions in a programming language.”

Nathalie Revol - INRIA - Universit´ e de Lyon - LIP IEEE-1788 standardization of interval arithmetic