|
FUNCTION function_is_2d_table (func : maths_function) : BOOLEAN; LOCAL temp : maths_space ; pspace : product_space ; itvl1 , itvl2 : finite_integer_interval ; END_LOCAL ; IF NOT EXISTS ( func ) THEN RETURN ( FALSE ) ; END_IF ; IF space_dimension ( func . domain ) <> 1 THEN RETURN ( FALSE ) ; END_IF ; temp := factor1 ( func . domain ) ; IF NOT ( 'product_space' IN stripped_typeof ( temp ) ) THEN RETURN ( FALSE ) ; END_IF ; pspace := temp ; IF space_dimension ( pspace ) <> 2 THEN RETURN ( FALSE ) ; END_IF ; temp := factor1 ( pspace ) ; IF NOT ( 'finite_integer_interval' IN stripped_typeof ( temp ) ) THEN RETURN ( FALSE ) ; END_IF ; itvl1 := temp ; temp := factor_space ( pspace , 2 ) ; IF NOT ( 'finite_integer_interval' IN stripped_typeof ( temp ) ) THEN RETURN ( FALSE ) ; END_IF ; itvl2 := temp ; RETURN ( bool ( ( itvl1 . min = itvl2 . min ) AND ( ( itvl1 . min = 0 ) OR ( itvl1 . min = 1 ) ) ) ) ; END_FUNCTION; -- function_is_2d_table |
|
public class FFunction_is_2d_table public static Value run(SdaiContext _context, Value func) |