sig   type path = Region.offset list   and offset = Oindex of Lang.F.term | Ofield of Lang.field   val access : Lang.F.term -> Region.path -> Lang.F.term   val update : Lang.F.term -> Region.path -> Lang.F.term -> Lang.F.term   type rpath = Region.roffset list   and roffset = Rindex of Vset.set | Rfield of Lang.field   type region   val empty : Region.region   val full : Region.region   val path : Region.path -> Region.region   val rpath : Region.rpath -> Region.region   val merge : Region.region -> Region.region -> Region.region   val disjoint : Region.region -> Region.region -> Lang.F.pred   val subset : Region.region -> Region.region -> Lang.F.pred   val equal_but :     Lang.F.tau -> Region.region -> Lang.F.term -> Lang.F.term -> Lang.F.pred   val vars : Region.region -> Lang.F.Vars.t   val occurs : Lang.F.var -> Region.region -> bool   val pretty : Format.formatter -> Region.region -> unit end