fun substr<> (x: int^n^n) returns (d: int) let d = x[0][0] - n; tel fun mean<> (i: int) returns (m: int) let m = substr<> (i^n^n) tel fun mean2<> (j: int) returns (m: int) let m = substr<> (j^n^n) tel node main() returns (m1,m2:int) let m1 = mean<<5>>(3); m2 = mean2<<5>>(3) tel (* CHECK compare *) node compare() returns (ok:bool) var x,y:int; let (x,y) = main(); ok = (x = y); tel