]> matita.cs.unibo.it Git - helm.git/commitdiff
Implemented substitution application and concatenation
authordenes <??>
Tue, 9 Jun 2009 13:15:58 +0000 (13:15 +0000)
committerdenes <??>
Tue, 9 Jun 2009 13:15:58 +0000 (13:15 +0000)
helm/software/components/ng_paramodulation/foSubst.ml

index 92d6aba25a7ef99e6b24e0d39e187c84737761e0..bfef2f2b176d531f385bf782bf1cc9fed0271397 100644 (file)
@@ -36,7 +36,13 @@ module Subst (B : Terms.Blob) = struct
       varlist
   ;;
 
-  let apply_subst = assert false;;
-  let concat = assert false
+  let rec apply_subst subst = function
+    | (Terms.Leaf _) as t -> t
+    | Terms.Var i -> lookup_subst i subst
+    | (Terms.Node l) ->
+       Terms.Node (List.map (fun t -> apply_subst subst t) l)
+;;
+
+  let concat x y = x @ y;;
   
 end