Module("term/properties",[Imports([Import("strategy/traversal/simple")]),Strategies([SDefNoArgs("is-subterm",Seq(Match(NoAnnoList(Tuple([Var("x"),Var("y")]))),Where(BA(Call(SVar("oncetd"),[Match(Var("x"))]),Var("y"))))),SDefNoArgs("is-proper-subterm",Seq(Match(NoAnnoList(Tuple([Var("x"),Var("y")]))),Seq(Not(CallNoArgs(SVar("eq"))),CallNoArgs(SVar("is-subterm")))))]),Strategies([SDefNoArgs("is-superterm",Seq(Match(NoAnnoList(Tuple([Var("x"),Var("y")]))),Where(BA(Call(SVar("oncetd"),[Match(Var("y"))]),Var("x"))))),SDefNoArgs("is-proper-superterm",Seq(Match(NoAnnoList(Tuple([Var("x"),Var("y")]))),Seq(Not(CallNoArgs(SVar("eq"))),CallNoArgs(SVar("is-superterm")))))]),Strategies([SDefNoArgs("is-proper-subterm-set",Seq(Match(NoAnnoList(Tuple([NoAnnoList(ListTail([Var("y")],Wld)),Var("xs")]))),Where(BA(Call(SVar("fetch"),[Seq(Not(Match(Var("y"))),Call(SVar("oncetd"),[Match(Var("y"))]))]),Var("xs"))))),SDefNoArgs("is-proper-superterm-set",Seq(Match(NoAnnoList(Tuple([NoAnnoList(ListTail([Var("x")],Wld)),Var("ys")]))),Where(BA(Call(SVar("fetch"),[BA(CallNoArgs(SVar("is-proper-superterm")),NoAnnoList(Tuple([Var("x"),RootApp(Id)])))]),Var("ys")))))]),Strategies([SDefNoArgs("is-leaf",All(Fail)),SDefNoArgs("is-inner-node",One(Id))])])
