diff --git a/src/language/modules/MathFunctionRegisterForVh.cpp b/src/language/modules/MathFunctionRegisterForVh.cpp
index d0468777f4528873115939a69027dcb6844d936f..05d2ea703cfbce9d233fc285f2b38ebbb805ae14 100644
--- a/src/language/modules/MathFunctionRegisterForVh.cpp
+++ b/src/language/modules/MathFunctionRegisterForVh.cpp
@@ -216,6 +216,13 @@ MathFunctionRegisterForVh::MathFunctionRegisterForVh(SchemeModule& scheme_module
 
                                              ));
 
+  scheme_module._addBuiltinFunction("trace", std::function(
+
+                                               [](std::shared_ptr<const IDiscreteFunction> A)
+                                                 -> std::shared_ptr<const IDiscreteFunction> { return trace(A); }
+
+                                               ));
+
   scheme_module._addBuiltinFunction("inverse", std::function(
 
                                                  [](std::shared_ptr<const IDiscreteFunction> A)
@@ -223,6 +230,14 @@ MathFunctionRegisterForVh::MathFunctionRegisterForVh(SchemeModule& scheme_module
 
                                                  ));
 
+  scheme_module._addBuiltinFunction("transpose",
+                                    std::function(
+
+                                      [](std::shared_ptr<const IDiscreteFunction> A)
+                                        -> std::shared_ptr<const IDiscreteFunction> { return transpose(A); }
+
+                                      ));
+
   scheme_module._addBuiltinFunction("min", std::function(
 
                                              [](std::shared_ptr<const IDiscreteFunction> a) -> double { return min(a); }