diff --git a/fast-mult.list b/fast-mult.list
deleted file mode 100644
index e69de29..0000000
diff --git a/half.lisp b/half.lisp
deleted file mode 100644
index 63cb831..0000000
--- a/half.lisp
+++ /dev/null
@@ -1,4 +0,0 @@
-(in-package :math-algo)
-
-(defun my-half (x)
-  (/ x 2))
diff --git a/math-algorithm.asd b/math-algorithm.asd
index 0f782e7..8fcf3fc 100644
--- a/math-algorithm.asd
+++ b/math-algorithm.asd
@@ -18,9 +18,10 @@
    (:file "even?" :depends-on ("packages"))
    (:file "expt" :depends-on ("packages"))
    (:file "factorial" :depends-on ("packages"))
-   (:file "fast-expt" :depends-on ("packages" "square" "even?" "half"))
+   (:file "fast-expt" :depends-on ("packages" "square" "even?" "halve"))
+   (:file "fast-mult" :depends-on ("packages" "double" "halve"))
    (:file "fib" :depends-on ("packages"))
-   (:file "half" :depends-on ("packages"))
+   (:file "halve" :depends-on ("packages"))
    (:file "odd?" :depends-on ("packages"))
    (:file "square" :depends-on ("packages"))
    (:file "sqrt" :depends-on ("packages" "abs" "average" "square"))))
diff --git a/packages.lisp b/packages.lisp
index 59fe460..dce44e3 100644
--- a/packages.lisp
+++ b/packages.lisp
@@ -18,10 +18,11 @@
            my-fast-expt-recu-impl
            my-fast-expt-iter-impl
            my-fast-expt-do-impl
+           my-fast-mult-recu-impl
            my-fib-do-impl
            my-fib-recu-impl
            my-fib-iter-impl
-           my-half
+           my-halve
            my-odd?
            my-square
            my-sqrt))