let compile (te,dims) =
let tau = tau_of_ctype te in
let tau_dim = tau_of_tarray tau dims in
let aid = LogicId.create ("Eq_" ^ tarray_name te dims) in
let pool = LogicLang.pool () in
let a = LogicLang.fresh pool "a" tau_dim in
let b = LogicLang.fresh pool "b" tau_dim in
let condition = eq_tarray pool te dims (e_var a) (e_var b) in
LogicDef.declare {
d_name = aid ;
d_item = PREDICATE([a],Some condition) ;
d_descr = {
t_source = Lexing.dummy_pos ;
t_short = "equality for array" ;
t_descr = "" ;
} ;
} ; aid