5 | | | Thm* r:rel(), ds,da:Collection(dec()), de:sig(), rho:Decl, st1:Collection(SimpleType), e:{[[de]] rho}, s:{[[ds]] rho}, a:[[st1]] rho, tr:trace_env([[da]] rho). trace_consistent_rel(rho;da;tr.proj;r)  tc(r;ds;st1;de)  [[r]] rho ds st1 de e s a tr Prop | [rel_mng_wf] |
4 | | | Thm* ds,da:Collection(dec()), de:sig(), rho:Decl, st1:Collection(SimpleType), e1:{1of([[de]] rho)}, s:{[[ds]] rho}, a:[[st1]] rho, tr:trace_env([[da]] rho), l:Term List. ( i: ||l||. trace_consistent(rho;da;tr.proj;l[i]))  ( ls:SimpleType List, f:reduce( s,m. [[s]] rho m;Prop;ls). ||ls|| = ||l|| & ( i: . i < ||l||  ls[i] term_types(ds;st1;de;l[i]))  list_accum(x,t.x([[t]] e1 s a tr);f;l) Prop) | [rel_mng_lemma] |