Skip to content

Commit

Permalink
Flesh out README a bit
Browse files Browse the repository at this point in the history
  • Loading branch information
dpsanders committed May 19, 2024
1 parent e28a43c commit 6b1b220
Showing 1 changed file with 20 additions and 3 deletions.
23 changes: 20 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,23 @@ An interval box of dimension $n$ thus represents an axis-aligned *set* in Euclid

## Basic usage

### Constructing `IntervalBox`es
```jl

julia> using IntervalBoxes, IntervalArithmetic, IntervalArithmetic.Symbols

julia> X = IntervalBox(1..3, 4..6)
[1.0, 3.0] × [4.0, 6.0]

julia> Y = IntervalBox(2..5, 2)
[2.0, 5.0
```

### Set operations
We treat `IntervalBox`es as sets as much as possible, and extend Julia's set operations
to act on these objects:

```jl
julia> X Y
[2.0, 3.0] × [4.0, 5.0]

Expand All @@ -28,12 +38,19 @@ julia> [2, 5] ∈ X ∩ Y
true
```

We treat `IntervalBox`es as sets as much as possible, and extend Julia's set operations
to act on these objects.

Note that the `` operator produces the *interval hull* of the union
(i.e. the smallest interval box that contains the union).

### Range of multi-dimensional functions
Interval arithmetic allows us to compute an enclosure (in general, an over-estimate)
of the range of a multi-dimensional function. E.g.:
```
julia> f((x, y)) = x + y;
julia> f(X)
[5.0, 9.0]
```


## Authors
Copyright by JuliaIntervals contributors 2017–2024.
Expand Down

0 comments on commit 6b1b220

Please sign in to comment.