/usr/share/octave/packages/interval-3.1.0/doc-cache is in octave-interval 3.1.0-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 | # doc-cache created by Octave 4.2.1
# name: cache
# type: cell
# rows: 3
# columns: 15
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 13
ctc_intersect
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 892
-- Function: ctc_intersect (C1, Y1, C2, Y2)
-- Function: ctc_intersect (C1, C2)
Return a contractor function for the intersection of two sets.
Functions C1 and C2 define two sets ‘S1 = {X | C1 (X) ∈ Y1}’ and
‘S2 = {X | C2 (X) ∈ Y2}’. The return value is a contractor
function for the set ‘S1 ∩ S2 = {X | C1 (X) ∈ Y1 and C2 (X) ∈ Y2}’.
Parameters C1 and C2 must be function handles and must accept the
same number of parameters. See ‘@infsup/fsolve’ for how to define
contractor functions. The user manual also contains an example on
how to use this function.
Instead of solving ‘C1 (X) ∈ Y1’ and ‘C2 (X) ∈ Y2’ separately and
then compute an intersection of the result, you can solve
‘ctc_intersect (C1, Y1, C2, Y2) = 0’.
See also: @infsup/fsolve, ctc_union.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 62
Return a contractor function for the intersection of two sets.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 9
ctc_union
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 869
-- Function: ctc_union (C1, Y1, C2, Y2)
-- Function: ctc_union (C1, C2)
Return a contractor function for the union of two sets.
Functions C1 and C2 define two sets ‘S1 = {X | C1 (X) ∈ Y1}’ and
‘S2 = {X | C2 (X) ∈ Y2}’. The return value is a contractor
function for the set ‘S1 ∪ S2 = {X | C1 (X) ∈ Y1 or C2 (X) ∈ Y2}’.
Parameters C1 and C2 must be function handles and must accept the
same number of parameters. See ‘@infsup/fsolve’ for how to define
contractor functions. The user manual also contains an example on
how to use this function.
Instead of solving ‘C1 (X) ∈ Y1’ and ‘C2 (X) ∈ Y2’ separately and
then compute an union of the result, you can solve ‘ctc_union (C1,
Y1, C2, Y2) = 0’.
See also: @infsup/fsolve, ctc_intersect.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 55
Return a contractor function for the union of two sets.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 5
empty
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 927
-- Function: empty ()
-- Function: empty (N)
-- Function: empty (N, M)
-- Function: empty (N, M, K, ...)
-- Function: empty ([N M ...])
Return the empty interval.
With additional parameters, create an interval vector/matrix/array,
which comprises empty interval entries.
The empty interval [Empty] contains no real numbers. All interval
functions return an empty result if the input is either empty or
outside of the function’s domain.
The empty interval carries the trivial ‘trv’ decoration, which
denotes that the empty interval cannot be the result of a function
evaluation for a nonempty subset of its domain.
Accuracy: The representation of the empty interval is exact.
x = empty ()
⇒ x = [Empty]_trv
inf (x)
⇒ ans = Inf
sup (x)
⇒ ans = -Inf
See also: @infsup/isempty, entire.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 26
Return the empty interval.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 6
entire
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 1162
-- Function: entire ()
-- Function: entire (N)
-- Function: entire (N, M)
Return the entire set of real numbers.
With additional parameters, create an interval vector/matrix/array,
which comprises entire interval entries.
The entire set of real numbers [Entire] is a closed interval. If
used as an enclosure for a certain value, it represents a state of
minimum constraints. An interval function which evaluates to
[Entire] yields no information at all if no interval decoration is
present.
The special floating-point values -Inf and Inf represent boundaries
of the entire set of real numbers. However, they are not members
of the interval.
The result of this function carries the defined and continuous
‘dac’ decoration, which denotes that the interval is not bounded
and therefore is no common interval.
Accuracy: The representation of the entire set of real numbers is
exact.
x = entire ()
⇒ x = [Entire]_dac
inf (x)
⇒ ans = -Inf
sup (x)
⇒ ans = Inf
See also: @infsup/isentire, empty.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 38
Return the entire set of real numbers.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 15
exacttointerval
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 1154
-- Function: exacttointerval (S)
-- Function: exacttointerval (L, U)
-- Function: exacttointerval (M)
Create a bare interval. Fail, if the interval cannot exactly
represent the input.
Typically, this function operates on interval literals S. It is
also possible to pass lower and upper boundaries L and U, or create
a point-interval with a midpoint M.
All valid input formats of the ‘infsup’ class constructor are
allowed. By giving a cell as input it is possible to create
N-dimensional interval arrays. If this function creates an
interval array, all interval boundaries must be representable with
binary64 numbers.
Accuracy: The equation ‘X == exacttointerval (intervaltoexact (X))’
holds for all intervals.
w = exacttointerval ("[ ]")
⇒ w = [Empty]
x = exacttointerval ("[2, 3]")
⇒ x = [2, 3]
y = exacttointerval ("[,]")
⇒ y = [Entire]
z = exacttointerval ("[21e-1]")
⊣ ??? exacttointerval: interval wouldn't be exact
See also: @infsup/intervaltoexact, @infsup/infsup.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 23
Create a bare interval.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 4
hull
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 1380
-- Function: hull (X1, X2, …)
Create an interval enclosure for a list of parameters.
Parameters can be simple numbers, intervals or interval literals as
strings. If needed, broadcasting is performed.
NaNs represent missing values and are treated like empty intervals.
Inf and -Inf can be used to create unbound intervals, but note that
these values will not be members of the interval. In particular,
it is not possible to create an interval with ‘hull (inf)’.
The result is equivalent to ‘union (infsupdec (X1), union
(infsupdec (X2), …))’, but computed in a more efficient way. In
contrast to the union function, this function is not considered a
set operation and the result carries the best possible decoration,
which is allowed by the input parameters.
Warning: This function is not defined by IEEE Std 1788-2015 and
shall not be confused with the standard’s convexHull function,
which is implemented by ‘union’.
Accuracy: The result is a tight enclosure.
hull (1, 4, 3, 2)
⇒ ans = [1, 4]_com
hull (empty, entire)
⇒ ans = [Entire]_trv
hull ("0.1", "pi", "e")
⇒ ans ⊂ [0.099999, 3.1416]_com
hull ("[0, 3]", "[4, 7]")
⇒ ans = [0, 7]_com
See also: @infsupdec/union.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 54
Create an interval enclosure for a list of parameters.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 16
interval_bitpack
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 727
-- Function: interval_bitpack (X)
Decode an interval from its interchange format.
The input must either be a matrix of n × 128 bits for n bare
intervals, or a matrix of n × 136 bits for n decorated intervals.
Bits are in increasing order. Byte order depends on the system’s
endianness. First 8 bytes are used for the lower interval
boundary, next 8 bytes are used for the upper interval boundary,
(optionally) last byte is used for the decoration.
The result is a row vector of intervals.
Accuracy: For all valid interchange encodings the following
equation holds: ‘X == bitunpack (interval_bitpack (X))’.
See also: @infsup/bitunpack, @infsupdec/bitunpack.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 47
Decode an interval from its interchange format.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 6
midrad
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 1695
-- Function: I = midrad (M, R)
-- Function: I = midrad (M)
-- Function: I = midrad ()
-- Function: [M, R] = midrad (I)
Create an interval enclosure I for [M-R, M+R].
With two output arguments, compute a rigorous midpoint M and
radius R for interval I.
Without input parameters, return the empty interval. With only one
input parameter, the radius R defaults to zero.
Parameters can be simple numbers, intervals or interval literals as
strings. If needed, broadcasting is performed.
The result is not guaranteed to be tightest if parameters are given
as strings. This is due to intermediate results. The infsupdec
constructor with interval literals in uncertain form ‘m?ruE’ can
instead be used to create tight enclosures of decimal numbers with
a radius.
Accuracy (with one output argument): The result is an accurate
enclosure. The result is tightest if M and R are floating-point
numbers or intervals.
Accuracy (with two output arguments): M is the interval’s midpoint
in binary64 precision, rounded to nearest and ties to even. The
returned radius R will make a tight enclosure of the interval
together with M. That is, R is the smallest binary64 number, which
will make [M-R, M+R] enclose the interval I.
midrad (42, 3)
⇒ ans = [39, 45]_com
midrad (0, inf)
⇒ ans = [Entire]_dac
midrad ("1.1", "0.1")
⇒ ans ⊂ [0.99999, 1.2001]_com
midrad ("25", "3/7")
⇒ ans ⊂ [24.571, 25.429]_com
See also: @infsupdec/infsupdec, hull, @infsupdec/mid,
@infsupdec/rad.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 47
Create an interval enclosure I for [M-R, M+R].
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 3
nai
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 852
-- Function: nai ()
-- Function: nai (N)
-- Function: nai (N, M)
-- Function: nai (N, M, K, ...)
-- Function: nai ([N, M, ...])
Return the ill-formed decorated interval, called NaI (Not an
Interval).
Ill-formed intervals are the result of an illegal interval
creation, e.g. ‘[3, 2]’. They occur if the ‘infsupdec’
constructor is called with an invalid input and survive through
interval arithmetic computations. Boolean comparisons on NaIs
return ‘false’, i.e. ‘[NaI] == [NaI]’ is false.
The interval part of NaI is undefined. The decoration part of NaI
is ‘ill’.
The infsup constructor will not produce NaIs, but a warning
instead.
x = nai ()
⇒ x = [NaI]
x + 42
⇒ ans = [NaI]
See also: @infsupdec/infsupdec.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 71
Return the ill-formed decorated interval, called NaI (Not an Interval).
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 10
vereigback
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 1249
-- Function: [LAMBDA, X, EP] = vereigback (A)
Verified backward error analysis of eigenpairs.
For a square complex (or real) matrix A, this function computes a
vector of eigenvalues LAMBDA and a matrix of eigenvectors X in the
usual Octave way
‘[X, L] = eig (A); lambda = diag (L);’
and additionally a vector EP with the following property: for each
I there exists a matrix, say A[I], verified to satisfy ‘max (max
(abs (A - A[i]))) <= ep(i)’ such that ‘(lambda(i), X(:, i))’ is
verified to be an _exact_ eigenpair of A[I]. If A, ‘lambda(i)’,
and ‘X(:, i)’ are real then A[I] can be taken real, otherwise it is
complex in general. The maximal value of ‘ep(i)’ is usually very
small (of order 1e-013 to 1e-016), which shows that Octave computes
eigenvalues and eigenvectors with great accuracy.
Based on the inequality (3.13) in J. Rohn, A Handbook of Results on
Interval Linear Problems, posted at <http://www.cs.cas.cz/~rohn>,
which also holds for complex eigenpairs (unpublished).
This work was supported by the Czech Republic National Research
Program “Information Society”, project 1ET400300415.
See also: eig.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 47
Verified backward error analysis of eigenpairs.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 9
vereigvec
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 1267
-- Function: [EVC, LAMBDA, AS] = vereigvec (A, X)
Verified real eigenvector of an interval matrix.
For a square interval matrix A and a _real_ vector X, this function
verifies X to be an eigenvector of some matrix in A, or not to be
an eigenvector of any matrix in A, or yields no verified result
(unfortunately, complex eigenvectors cannot be handled yet):
EVC = 1
X is verified to be an eigenvector of some matrix in A, LAMBDA
is an interval number such that for each LAMBDA0 ∈ LAMBDA, A
is verified to contain a matrix having (LAMDA0, X) as an
eigenpair, AS is a very tight interval matrix verified to
contain a matrix having (mid (LAMBDA), X) as an eigenpair,
EVC = 0
X is verified not to be an eigenvector of any matrix in A,
LAMBDA and AS consist of empty intervals,
EVC = -1
no verified result (data may be wrong).
Based on the section “Real eigenvectors” in J. Rohn, A handbook of
results on interval linear problems, posted at
<http://www.cs.cas.cz/~rohn>.
This work was supported by the Czech Republic National Research
Program “Information Society”, project 1ET400300415.
See also: eig.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 48
Verified real eigenvector of an interval matrix.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 14
verintlinineqs
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 1692
-- Function: [X, AS] = verintlinineqs (A, B)
Verified strong solution of interval linear inequalities.
For a rectangular interval matrix A and a matching interval
vector B, this function either computes a strong solution X to
A * X ≤ b
(i. e., a real vector X verified to satisfy AO * X ≤ BO for each AO
in A and BO in B), or verifies nonexistence of such a solution, or
yields no verified result:
~isnan (X)
X is a verified strong solution of A * X ≤ B, and AS is an
interval matrix of empty intervals,
~isempty (AS)
AS is a very right (“almost thin”) interval matrix verified to
contain a real matrix AO such that the system AO * X ≤ B.inf
has no solution (which proves that no strong solution exists),
and X is a vector of NaNs,
otherwise
no verified output.
A theoretical result [1] asserts that if each system AO * X ≤ BO,
where AO in A and BO in B, has a solution (depending generally on
AO and BO), then there exists a vector X satisfying AO * X ≤ BO for
_each_ AO in A and BO in B. Such a vector X is called a strong
solution of the system A * X ≤ B.
[1] J. Rohn and J. Kreslova, Linear Interval Inequalities, LAMA 38
(1994), 79–82.
Based on Section 2.13 in M. Fiedler, J. Nedoma, J. Ramik, J. Rohn
and K. Zimmermann, Linear Optimization Problems with Inexact Data,
Springer-Verlag, New York 2006.
This work was supported by the Czech Republic National Research
Program “Information Society”, project 1ET400300415.
See also: .
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 57
Verified strong solution of interval linear inequalities.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 12
verinvnonneg
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 929
-- Function: [nonneg, As] = verinvnonneg (A)
Verified nonnegative invertibility of an interval matrix.
For a square interval (or real) matrix A, this function verifies
inverse nonnegativity of A, or not-inverse-nonnegativity of A, or
yields no verified result:
NONNEG = 1
A verified inverse nonnegative,
NONNEG = 0
A verified not to be inverse nonnegative; AS is a matrix in A
(always one of the two bounds) which is verified not to be
inverse nonnegative,
NONNEG = -1
no verified result.
Based on the result by Kuttler, Math. of Computation 1971; see
also J. Rohn, A Handbook of Results on Interval Linear Problems,
posted at <http://www.cs.cas.cz/~rohn>, Section 3.9.
This work was supported by the Czech Republic National Research
Program “Information Society”, project 1ET400300415.
See also: inv.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 57
Verified nonnegative invertibility of an interval matrix.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 12
verlinineqnn
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 1105
-- Function: [X, Y] = verlinineqnn (A, B)
Verified nonnegative solution of a system of linear inequalities.
For a rectangular real matrix A and a matching real vector B, this
function either computes a verified solution of the system of
linear inequalities
A * X ≤ b,
X ≥ 0,
or verifies nonexistence of a solution, or yields no verified
result.
Possible outputs:
• Either X is a real vector verified to satisfy both
inequalities and Y is a vector of NaN’s,
• or Y is a real vector verified to satisfy
A’ * Y ≥ 0,
Y ≥ 0,
B’ * Y ≤ -1
(which by Farka’s lemma implies nonexistence of a solution to
the original inequalities), and X is a vector of NaN’s,
• or both X and Y are NaN’s. In this case no verified result
could be found.
This work was supported by the Czech Republic National Research
Program “Information Society”, project 1ET400300415.
See also: linprog.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 65
Verified nonnegative solution of a system of linear inequalities.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 10
verlinprog
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 1966
-- Function: [FLAG, X, Y, H] = verlinprog (A, B, C)
Verified linear programming.
For a real matrix A (full or sparse) and matching real vectors B,
C, this function either computes verified optimal solution X,
verified dual optimal solution Y and verified optimal value H of
the linear programming problem
min C’ * X subject to A * X = B, x ≥ 0,
or verifies (in)feasibility, or verifies unboundedness, or yields
no verified result. The respective outcome is always described
verbally in the variable FLAG.
Possible values of FLAG:
‘verified optimum’
X is verified to enclose a primal optimal solution, Y is
verified to enclose a dual optimal solution, H is verified to
enclose the optimal value,
‘verified unbounded’
X is verified to enclose a primal feasible solution XO, and Y
is verified to enclose a vector YO such that the objective
tends to -Inf along the feasible half-line {XO + T * YO | T ≥
0}, H is empty,
‘verified feasible’
X is verified to enclose a primal feasible solution (neither
optimality nor unboundedness could be verified), Y, H are
empty,
‘verified infeasible’
Y is verified to enclose a Farkas vector YO satisfying A’ * YO
≥ 0, B’ * YO < 0 (whose existence proves primal
infeasibility), X, H are empty,
‘no verified result’
X, Y, and H are empty (no verified result could be found).
Complexity: The algorithm solves at most four linear programming
problems (independently of the size of the original problem) and
uses a verification procedure which runs approximately in O(M³)
time, where M = rows (A).
This work was supported by the Czech Republic National Research
Program “Information Society”, project 1ET400300415.
See also: linprog.
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 28
Verified linear programming.
|