File : reps-ops.ads
with Ada.Numerics.Generic_Elementary_Functions;
package Reps.Ops is
function "*"(N: Integer; R: Rep) return Rep;
function "/"(N: Integer; R: Rep) return Rep;
function "/"(R: Rep; N: Integer) return Rep;
function Sqr(R: Rep) return Rep;
package Rep_EF is new Ada.Numerics.Generic_Elementary_Functions(Rep);
function Sqrt(R: Rep) return Rep renames Rep_EF.Sqrt;
function Cos(R: Rep) return Rep renames Rep_EF.Cos;
function Sin(R: Rep) return Rep renames Rep_EF.Sin;
function Log(R: Rep) return Rep renames Rep_EF.Log;
function Cosh(R: Rep) return Rep renames Rep_EF.Cosh;
function Sinh(R: Rep) return Rep renames Rep_EF.Sinh;
function Exp(R: Rep) return Rep renames Rep_EF.Exp;
S2: constant Rep := Sqrt(Two);
S3: constant Rep := Sqrt(Three);
S6: constant Rep := Sqrt(Six);
pragma Inline ("*","/",Sqr);
end Reps.Ops;