general {
  funcon-term: sequential (
      check-true(is-in-type(true,booleans))
    , check-true(is-in-type(0,natural-numbers))
    , check-true(is-in-type(true,values))
    , check-true(is-in-type(true,ground-values))
    , check-true(is-in-type(true,booleans|natural-numbers))
    , check-true(is-in-type(0,~booleans))
    , check-true(is-in-type(0,booleans|natural-numbers))
    , check-true(is-in-type(booleans,value-types))
    , check-true(is-in-type(value-types,value-types))
    , check-true(is-in-type(empty-type,value-types))
    , check-true(is-in-type(ground-values,value-types))
    , check-true(is-in-type(booleans|natural-numbers,value-types))
    , check-true(is-in-type(booleans&natural-numbers,value-types))
    , check-true(is-in-type(~booleans,value-types))
    , check-true(not is-in-type(0,booleans))
    , check-true(not is-in-type(true,natural-numbers))
    , check-true(not is-in-type(true,empty-type))
    , check-true(not is-in-type(true,booleans&natural-numbers))
    , check-true(not is-in-type(true,~values))
    , check-true(not is-in-type(abstraction fail,ground-values))
    , print "OK"
    );
}

tests {
    result-term : null-value;
    standard-out : ["OK"];
} 
