File : intervals-ops.ads
package Intervals.Ops is
pragma Elaborate_Body;
function Scal(R1,R2: Rep) return Interval;
function Ball(S: Interval) return Interval;
function Inf(S: Interval) return Rep;
function Sup(S: Interval) return Rep;
function SupAbs(S: Interval) return Rep;
function "<"(S1,S2: Interval) return Boolean;
function IntFloor(S: Interval) return Integer;
function IntCeiling(S: Interval) return Integer;
function "abs"(S: Interval) return Interval;
function Min(S1,S2: Interval) return Interval;
function Max(S1,S2: Interval) return Interval;
function Cap(R: Radius; S: Interval) return Interval;
function Up(R: Rep; Dummy: Interval) return Rep;
function Widen(S: Interval) return Interval;
procedure ErrMult(R: in Rep; S: in out Interval);
function "+"(S,T: Interval) return Interval;
function "-"(S,T: Interval) return Interval;
function "*"(R: Rep; S: Interval) return Interval;
function "/"(S: Interval; R: Rep) return Interval;
function Sqr(S: Interval) return Interval;
function "*"(S,T: Interval) return Interval;
function Inv(S: Interval) return Interval;
function "/"(S,T: Interval) return Interval;
function "**"(S: Interval; I: Integer) return Interval;
function Cosh(S: Interval) return Interval;
function Sinh(S: Interval) return Interval;
function Exp(S: Interval) return Interval;
function Log(S: Interval) return Interval;
function Lambda(M,N: Integer) return Interval;
pragma Inline (Ball,Inf,Sup,SupAbs,ErrMult,"abs","+","-","*",Sqr,Inv);
pragma Inline_Always (Ball,Inf,Sup,SupAbs,ErrMult,"abs","+","-","*",Sqr,Inv);
private
procedure CoshSinh(S: in Interval; Sc,Ss: out Interval);
end Intervals.Ops;