MODULE mmath;
COMMAND mmath.acos(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.acos(X_0:flt):flt;
COMMENT "";
COMMAND mmath.asin(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.asin(X_0:flt):flt;
COMMENT "";
COMMAND mmath.atan(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.atan(X_0:flt):flt;
COMMENT "";
COMMAND mmath.atan2(X_0:dbl, X_1:dbl):dbl;
COMMENT "";
COMMAND mmath.atan2(X_0:flt, X_1:flt):flt;
COMMENT "";
COMMAND mmath.cbrt(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.cbrt(X_0:flt):flt;
COMMENT "";
COMMAND mmath.ceil(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.ceil(X_0:flt):flt;
COMMENT "";
COMMAND mmath.cos(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.cos(X_0:flt):flt;
COMMENT "";
COMMAND mmath.cosh(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.cosh(X_0:flt):flt;
COMMENT "";
COMMAND mmath.cot(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.cot(X_0:flt):flt;
COMMENT "";
COMMAND mmath.degrees(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.degrees(X_0:flt):flt;
COMMENT "";
COMMAND mmath.exp(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.exp(X_0:flt):flt;
COMMENT "";
COMMAND mmath.fabs(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.finite(X_0:dbl):bit;
COMMENT "";
COMMAND mmath.floor(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.floor(X_0:flt):flt;
COMMENT "";
PATTERN mmath.fmod(X_0:dbl, X_1:dbl):dbl;
COMMENT "";
PATTERN mmath.fmod(X_0:flt, X_1:flt):flt;
COMMENT "";
COMMAND mmath.isinf(X_0:dbl):int;
COMMENT "";
COMMAND mmath.isnan(X_0:dbl):bit;
COMMENT "";
COMMAND mmath.log(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.log(X_0:flt):flt;
COMMENT "";
COMMAND mmath.log10(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.log10(X_0:flt):flt;
COMMENT "";
COMMAND mmath.log2(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.log2(X_0:flt):flt;
COMMENT "";
COMMAND mmath.log2arg(X_0:dbl, X_1:dbl):dbl;
COMMENT "";
COMMAND mmath.log2arg(X_0:flt, X_1:flt):flt;
COMMENT "";
COMMAND mmath.pi():dbl;
COMMENT "";
COMMAND mmath.pow(X_0:dbl, X_1:dbl):dbl;
COMMENT "";
COMMAND mmath.pow(X_0:flt, X_1:flt):flt;
COMMENT "";
COMMAND mmath.prelude():void;
COMMENT "";
COMMAND mmath.radians(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.radians(X_0:flt):flt;
COMMENT "";
UNSAFE COMMAND mmath.rand():int;
COMMENT "";
UNSAFE COMMAND mmath.rand(X_0:int):int;
COMMENT "";
COMMAND mmath.round(X_0:dbl, X_1:int):dbl;
COMMENT "";
COMMAND mmath.round(X_0:flt, X_1:int):flt;
COMMENT "";
COMMAND mmath.sin(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.sin(X_0:flt):flt;
COMMENT "";
COMMAND mmath.sinh(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.sinh(X_0:flt):flt;
COMMENT "";
COMMAND mmath.sqlrand(X_0:int):int;
COMMENT "";
COMMAND mmath.sqrt(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.sqrt(X_0:flt):flt;
COMMENT "";
COMMAND mmath.srand(X_0:int):void;
COMMENT "";
COMMAND mmath.tan(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.tan(X_0:flt):flt;
COMMENT "";
COMMAND mmath.tanh(X_0:dbl):dbl;
COMMENT "";
COMMAND mmath.tanh(X_0:flt):flt;
COMMENT "";
MODULE batmmath;
PATTERN batmmath.acos(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.acos(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.acos(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.acos(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.asin(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.asin(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.asin(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.asin(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.atan(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.atan(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.atan(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.atan(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.atan2(X_0:bat[:dbl], X_1:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.atan2(X_0:bat[:dbl], X_1:bat[:dbl], X_2:bat[:oid], X_3:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.atan2(X_0:bat[:dbl], X_1:dbl):bat[:dbl];
COMMENT "";
PATTERN batmmath.atan2(X_0:bat[:dbl], X_1:dbl, X_2:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.atan2(X_0:bat[:flt], X_1:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.atan2(X_0:bat[:flt], X_1:bat[:flt], X_2:bat[:oid], X_3:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.atan2(X_0:bat[:flt], X_1:flt):bat[:flt];
COMMENT "";
PATTERN batmmath.atan2(X_0:bat[:flt], X_1:flt, X_2:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.atan2(X_0:dbl, X_1:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.atan2(X_0:dbl, X_1:bat[:dbl], X_2:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.atan2(X_0:flt, X_1:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.atan2(X_0:flt, X_1:bat[:flt], X_2:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.cbrt(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.cbrt(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.cbrt(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.cbrt(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.ceil(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.ceil(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.ceil(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.ceil(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.cos(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.cos(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.cos(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.cos(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.cosh(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.cosh(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.cosh(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.cosh(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.cot(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.cot(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.cot(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.cot(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.degrees(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.degrees(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.degrees(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.degrees(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.exp(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.exp(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.exp(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.exp(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.fabs(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.fabs(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.fabs(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.fabs(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.floor(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.floor(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.floor(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.floor(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.fmod(X_0:bat[:dbl], X_1:dbl):bat[:dbl];
COMMENT "";
PATTERN batmmath.fmod(X_0:bat[:dbl], X_1:dbl, X_2:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.fmod(X_0:bat[:flt], X_1:flt):bat[:flt];
COMMENT "";
PATTERN batmmath.fmod(X_0:bat[:flt], X_1:flt, X_2:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.log(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.log(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.log10(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log10(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log10(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.log10(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.log2(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log2(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log2(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.log2(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.log2arg(X_0:bat[:dbl], X_1:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log2arg(X_0:bat[:dbl], X_1:bat[:dbl], X_2:bat[:oid], X_3:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log2arg(X_0:bat[:dbl], X_1:dbl):bat[:dbl];
COMMENT "";
PATTERN batmmath.log2arg(X_0:bat[:dbl], X_1:dbl, X_2:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log2arg(X_0:bat[:flt], X_1:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.log2arg(X_0:bat[:flt], X_1:bat[:flt], X_2:bat[:oid], X_3:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.log2arg(X_0:bat[:flt], X_1:flt):bat[:flt];
COMMENT "";
PATTERN batmmath.log2arg(X_0:bat[:flt], X_1:flt, X_2:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.log2arg(X_0:dbl, X_1:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log2arg(X_0:dbl, X_1:bat[:dbl], X_2:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.log2arg(X_0:flt, X_1:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.log2arg(X_0:flt, X_1:bat[:flt], X_2:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.pow(X_0:bat[:dbl], X_1:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.pow(X_0:bat[:dbl], X_1:bat[:dbl], X_2:bat[:oid], X_3:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.pow(X_0:bat[:dbl], X_1:dbl):bat[:dbl];
COMMENT "";
PATTERN batmmath.pow(X_0:bat[:dbl], X_1:dbl, X_2:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.pow(X_0:bat[:flt], X_1:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.pow(X_0:bat[:flt], X_1:bat[:flt], X_2:bat[:oid], X_3:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.pow(X_0:bat[:flt], X_1:flt):bat[:flt];
COMMENT "";
PATTERN batmmath.pow(X_0:bat[:flt], X_1:flt, X_2:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.pow(X_0:dbl, X_1:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.pow(X_0:dbl, X_1:bat[:dbl], X_2:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.pow(X_0:flt, X_1:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.pow(X_0:flt, X_1:bat[:flt], X_2:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.radians(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.radians(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.radians(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.radians(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
UNSAFE PATTERN batmmath.rand(X_0:bat[:int]):bat[:int];
COMMENT "";
UNSAFE PATTERN batmmath.rand(X_0:bat[:int], X_1:bat[:oid]):bat[:int];
COMMENT "";
PATTERN batmmath.sin(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.sin(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.sin(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.sin(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.sinh(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.sinh(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.sinh(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.sinh(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.sqrt(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.sqrt(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.sqrt(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.sqrt(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.tan(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.tan(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.tan(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.tan(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
PATTERN batmmath.tanh(X_0:bat[:dbl]):bat[:dbl];
COMMENT "";
PATTERN batmmath.tanh(X_0:bat[:dbl], X_1:bat[:oid]):bat[:dbl];
COMMENT "";
PATTERN batmmath.tanh(X_0:bat[:flt]):bat[:flt];
COMMENT "";
PATTERN batmmath.tanh(X_0:bat[:flt], X_1:bat[:oid]):bat[:flt];
COMMENT "";
##Â Sample module
MODULE sample;
PATTERN sample.subuniform(X_0:bat[:any], X_1:dbl):bat[:oid];
COMMENT "";
PATTERN sample.subuniform(X_0:bat[:any], X_1:dbl, X_2:int):bat[:oid];
COMMENT "";
PATTERN sample.subuniform(X_0:bat[:any], X_1:lng):bat[:oid];
COMMENT "";
PATTERN sample.subuniform(X_0:bat[:any], X_1:lng, X_2:int):bat[:oid];
COMMENT "";