Overview Schemas Index

MATHEMATICAL_FUNCTIONS_SCHEMA (jsdai.SMathematical_functions_schema)


FUNCTION function_is_table
          (func : maths_function) : BOOLEAN;

LOCAL
    tspace : tuple_space;
    temp : maths_space;
    base : INTEGER;
  END_LOCAL;
  IF  NOT  EXISTS (func) THEN   RETURN  (FALSE);  END_IF;
  tspace := func.domain;
  IF  (space_dimension (tspace) = 1) AND  ((schema_prefix + 'TUPLE_SPACE') IN
    TYPEOF  (factor1 (tspace))) THEN
    tspace := factor1 (tspace);
  END_IF;
  IF  NOT  ((schema_prefix + 'PRODUCT_SPACE') IN  TYPEOF  (tspace)) THEN
    RETURN  (FALSE);
  END_IF;
  temp := factor1 (tspace);
  IF  NOT  ((schema_prefix + 'FINITE_INTEGER_INTERVAL') IN  TYPEOF  (temp)) THEN
    RETURN  (FALSE);
  END_IF;
  base := temp\finite_integer_interval.min;
  IF  (base <> 0) AND (base <> 1) THEN
    RETURN  (FALSE);
  END_IF;
  REPEAT i := 2 TO space_dimension (tspace);
    temp := factor_space (tspace, i);
    IF  NOT ((schema_prefix + 'FINITE_INTEGER_INTERVAL') IN TYPEOF (temp)) THEN
      RETURN  (FALSE);
    END_IF;
    IF temp\finite_integer_interval.min <> base THEN  RETURN  (FALSE);  END_IF;
  END_REPEAT;
  RETURN (TRUE);

END_FUNCTION; -- function_is_table

public class FFunction_is_table
          public static Value run(SdaiContext _context, Value func)