Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Converters/TreeSimplifier.cs
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Converters/TreeSimplifier.cs	(revision 17928)
+++ branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Converters/TreeSimplifier.cs	(revision 18027)
@@ -784,4 +784,6 @@
       } else if (IsExp(node)) {
         return MakeExp(MakeProduct(node.GetSubtree(0), MakeConstant(2.0))); // sqr(exp(x)) = exp(2x)
+      } else if (IsSquare(node)) {
+        return MakePower(node.GetSubtree(0), MakeConstant(4));
       } else if (IsCube(node)) {
         return MakePower(node.GetSubtree(0), MakeConstant(6));
@@ -809,4 +811,6 @@
       } else if (IsSquare(node)) {
         return MakePower(node.GetSubtree(0), MakeConstant(6));
+      } else if (IsCube(node)) {
+        return MakePower(node.GetSubtree(0), MakeConstant(9));
       } else {
         var cubeNode = cubeSymbol.CreateTreeNode();
Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Formatters/SymbolicDataAnalysisExpressionPythonFormatter.cs
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Formatters/SymbolicDataAnalysisExpressionPythonFormatter.cs	(revision 17928)
+++ branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Formatters/SymbolicDataAnalysisExpressionPythonFormatter.cs	(revision 18027)
@@ -58,5 +58,5 @@
     }
 
-    private string GenerateHeader(ISymbolicExpressionTree symbolicExpressionTree) {
+    private static string GenerateHeader(ISymbolicExpressionTree symbolicExpressionTree) {
       StringBuilder strBuilder = new StringBuilder();
 
@@ -102,5 +102,5 @@
     }
 
-    private string GenerateNecessaryImports(int mathLibCounter, int statisticLibCounter) {
+    private static string GenerateNecessaryImports(int mathLibCounter, int statisticLibCounter) {
       StringBuilder strBuilder = new StringBuilder();
       if (mathLibCounter > 0 || statisticLibCounter > 0) {
@@ -115,5 +115,5 @@
     }
 
-    private string GenerateIfThenElseSource(int evaluateIfCounter) {
+    private static string GenerateIfThenElseSource(int evaluateIfCounter) {
       StringBuilder strBuilder = new StringBuilder();
       if (evaluateIfCounter > 0) {
@@ -128,5 +128,5 @@
     }
 
-    private string GenerateModelEvaluationFunction(ISet<string> variables) {
+    private static string GenerateModelEvaluationFunction(ISet<string> variables) {
       StringBuilder strBuilder = new StringBuilder();
       strBuilder.Append("def evaluate(");
@@ -142,5 +142,5 @@
     }
 
-    private void FormatRecursively(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
+    private static void FormatRecursively(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
       ISymbol symbol = node.Symbol;
       if (symbol is ProgramRootSymbol)
@@ -208,7 +208,7 @@
     }
 
-    private string VariableName2Identifier(string variableName) => variableName.Replace(" ", "_");
-
-    private void FormatNode(ISymbolicExpressionTreeNode node, StringBuilder strBuilder, string prefixSymbol = "", string openingSymbol = "(", string closingSymbol = ")", string infixSymbol = ",") {
+    private static string VariableName2Identifier(string variableName) => variableName.Replace(" ", "_");
+
+    private static void FormatNode(ISymbolicExpressionTreeNode node, StringBuilder strBuilder, string prefixSymbol = "", string openingSymbol = "(", string closingSymbol = ")", string infixSymbol = ",") {
       strBuilder.Append($"{prefixSymbol}{openingSymbol}");
       foreach (var child in node.Subtrees) {
@@ -220,5 +220,5 @@
     }
 
-    private void FormatVariableTreeNode(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
+    private static void FormatVariableTreeNode(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
       var varNode = node as VariableTreeNode;
       var formattedVariable = VariableName2Identifier(varNode.VariableName);
@@ -227,10 +227,10 @@
     }
 
-    private void FormatConstantTreeNode(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
+    private static void FormatConstantTreeNode(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
       var constNode = node as ConstantTreeNode;
       strBuilder.Append(constNode.Value.ToString("g17", CultureInfo.InvariantCulture));
     }
 
-    private void FormatPower(ISymbolicExpressionTreeNode node, StringBuilder strBuilder, string exponent) {
+    private static void FormatPower(ISymbolicExpressionTreeNode node, StringBuilder strBuilder, string exponent) {
       strBuilder.Append("math.pow(");
       FormatRecursively(node.GetSubtree(0), strBuilder);
@@ -238,5 +238,5 @@
     }
 
-    private void FormatRoot(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
+    private static void FormatRoot(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
       strBuilder.Append("math.pow(");
       FormatRecursively(node.GetSubtree(0), strBuilder);
@@ -246,5 +246,5 @@
     }
 
-    private void FormatSubtraction(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
+    private static void FormatSubtraction(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
       if (node.SubtreeCount == 1) {
         strBuilder.Append("-");
@@ -256,5 +256,5 @@
     }
 
-    private void FormatDivision(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
+    private static void FormatDivision(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
       strBuilder.Append("(");
       if (node.SubtreeCount == 1) {
@@ -273,5 +273,5 @@
     }
 
-    private void FormatAnalyticQuotient(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
+    private static void FormatAnalyticQuotient(ISymbolicExpressionTreeNode node, StringBuilder strBuilder) {
       strBuilder.Append("(");
       FormatRecursively(node.GetSubtree(0), strBuilder);
Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/IntervalArithmeticGrammar.cs
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/IntervalArithmeticGrammar.cs	(revision 17928)
+++ 	(revision )
@@ -1,133 +1,0 @@
-﻿#region License Information
-
-/* HeuristicLab
- * Copyright (C) Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * HeuristicLab is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#endregion
-using System.Collections.Generic;
-using System.Linq;
-using HEAL.Attic;
-using HeuristicLab.Common;
-using HeuristicLab.Core;
-using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
-
-namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
-  [StorableType("5A2300A0-D0FC-4F2D-B910-F86384FE9052")]
-  [Item("IntervalArithmeticGrammar", "Represents a grammar for interval arithmetic which includes linear scaling parts implicitly.")]
-  public class IntervalArithmeticGrammar : DataAnalysisGrammar, ISymbolicDataAnalysisGrammar {
-    public IntervalArithmeticGrammar() : base(ItemAttribute.GetName(typeof(IntervalArithmeticGrammar)),
-      ItemAttribute.GetDescription(typeof(IntervalArithmeticGrammar))) {
-      Initialize();
-    }
-
-    [StorableConstructor]
-    public IntervalArithmeticGrammar(StorableConstructorFlag _) : base(_) { }
-
-    protected IntervalArithmeticGrammar(IntervalArithmeticGrammar original, Cloner cloner) : base(original, cloner) { }
-    public IntervalArithmeticGrammar(string name, string description) : base(name, description) { }
-
-    public override IDeepCloneable Clone(Cloner cloner) {
-      return new IntervalArithmeticGrammar(this, cloner);
-    }
-
-    private void Initialize() {
-      #region Symbols
-
-      var add = new Addition();
-      var sub = new Subtraction();
-      var mul = new Multiplication();
-      var div = new Division();
-      var sin = new Sine();
-      var cos = new Cosine();
-      var tan = new Tangent();
-      var tanh = new HyperbolicTangent();
-      var log = new Logarithm();
-      var exp = new Exponential();
-      var square = new Square();
-      var sqrt = new SquareRoot();
-      var cube = new Cube();
-      var cbrt = new CubeRoot();
-      var abs = new Absolute();
-      var aq = new AnalyticQuotient();
-      var constant = new Constant();
-      constant.MinValue = -20;
-      constant.MaxValue = 20;
-      var variableSymbol = new Variable();
-
-      #endregion
-
-      //Special symbols
-      var offset = new Addition { Name = "Offset" };
-      var scaling = new Multiplication { Name = "Scaling" };
-      //all other symbols
-      var allSymbols = new List<Symbol> {
-        add, sub, mul, div, constant, variableSymbol, sin, cos, tan, log, square, sqrt, cube, cbrt, exp,
-        tanh, aq, abs
-      };
-
-      var bivariateFuncs = new List<Symbol> { add, sub, mul, div, aq };
-      var univariateFuncs = new List<Symbol> { sin, cos, tan, tanh, exp, log, abs, square, cube, sqrt, cbrt };
-      var realValueSymbols = new List<Symbol> {
-         add, sub, mul, div, sin, cos, tan, tanh, exp, log, aq, abs, square, cube, sqrt, cbrt,
-         variableSymbol, constant,
-        };
-
-
-      //Add special symbols
-      AddSymbol(offset);
-      AddSymbol(scaling);
-      //Add all other symbols
-      foreach (var symb in allSymbols) AddSymbol(symb);
-
-      #region define subtree count for special symbols
-
-      foreach (var symb in bivariateFuncs) SetSubtreeCount(symb, 2, 2);
-
-      foreach (var symb in univariateFuncs) SetSubtreeCount(symb, 1, 1);
-
-      SetSubtreeCount(offset, 2, 2);
-      SetSubtreeCount(scaling, 2, 2);
-
-      #endregion
-
-      #region child symbols config
-
-      AddAllowedChildSymbol(StartSymbol, offset);
-
-      //Define childs for offset
-      AddAllowedChildSymbol(offset, scaling, 0);
-      AddAllowedChildSymbol(offset, constant, 1);
-
-      //Define childs for scaling
-      foreach (var symb in allSymbols) AddAllowedChildSymbol(scaling, symb, 0);
-      AddAllowedChildSymbol(scaling, constant, 1);
-
-      //Define childs for realvalue symbols
-      foreach (var symb in realValueSymbols) {
-        foreach (var c in realValueSymbols) AddAllowedChildSymbol(symb, c);
-      }
-
-      #endregion
-
-      Symbols.First(s => s is Cube).Enabled = false;
-      Symbols.First(s => s is CubeRoot).Enabled = false;
-      Symbols.First(s => s is Absolute).Enabled = false;
-    }
-  }
-}
Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/LinearScalingGrammar.cs
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/LinearScalingGrammar.cs	(revision 18027)
+++ branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/LinearScalingGrammar.cs	(revision 18027)
@@ -0,0 +1,133 @@
+﻿#region License Information
+
+/* HeuristicLab
+ * Copyright (C) Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#endregion
+using System.Collections.Generic;
+using System.Linq;
+using HEAL.Attic;
+using HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
+
+namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
+  [StorableType("5A2300A0-D0FC-4F2D-B910-F86384FE9052")]
+  [Item("LinearScalingGrammar", "Represents a grammar which includes linear scaling parts implicitly.")]
+  public class LinearScalingGrammar : DataAnalysisGrammar, ISymbolicDataAnalysisGrammar {
+    public LinearScalingGrammar() : base(ItemAttribute.GetName(typeof(LinearScalingGrammar)),
+      ItemAttribute.GetDescription(typeof(LinearScalingGrammar))) {
+      Initialize();
+    }
+
+    [StorableConstructor]
+    public LinearScalingGrammar(StorableConstructorFlag _) : base(_) { }
+
+    protected LinearScalingGrammar(LinearScalingGrammar original, Cloner cloner) : base(original, cloner) { }
+    public LinearScalingGrammar(string name, string description) : base(name, description) { }
+
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new LinearScalingGrammar(this, cloner);
+    }
+
+    private void Initialize() {
+      #region Symbols
+
+      var add = new Addition();
+      var sub = new Subtraction();
+      var mul = new Multiplication();
+      var div = new Division();
+      var sin = new Sine();
+      var cos = new Cosine();
+      var tan = new Tangent();
+      var tanh = new HyperbolicTangent();
+      var log = new Logarithm();
+      var exp = new Exponential();
+      var square = new Square();
+      var sqrt = new SquareRoot();
+      var cube = new Cube();
+      var cbrt = new CubeRoot();
+      var abs = new Absolute();
+      var aq = new AnalyticQuotient();
+      var constant = new Constant();
+      constant.MinValue = -20;
+      constant.MaxValue = 20;
+      var variableSymbol = new Variable();
+
+      #endregion
+
+      //Special symbols
+      var offset = new Addition { Name = "Offset" };
+      var scaling = new Multiplication { Name = "Scaling" };
+      //all other symbols
+      var allSymbols = new List<Symbol> {
+        add, sub, mul, div, constant, variableSymbol, sin, cos, tan, log, square, sqrt, cube, cbrt, exp,
+        tanh, aq, abs
+      };
+
+      var bivariateFuncs = new List<Symbol> { add, sub, mul, div, aq };
+      var univariateFuncs = new List<Symbol> { sin, cos, tan, tanh, exp, log, abs, square, cube, sqrt, cbrt };
+      var realValueSymbols = new List<Symbol> {
+         add, sub, mul, div, sin, cos, tan, tanh, exp, log, aq, abs, square, cube, sqrt, cbrt,
+         variableSymbol, constant,
+        };
+
+
+      //Add special symbols
+      AddSymbol(offset);
+      AddSymbol(scaling);
+      //Add all other symbols
+      foreach (var symb in allSymbols) AddSymbol(symb);
+
+      #region define subtree count for special symbols
+
+      foreach (var symb in bivariateFuncs) SetSubtreeCount(symb, 2, 2);
+
+      foreach (var symb in univariateFuncs) SetSubtreeCount(symb, 1, 1);
+
+      SetSubtreeCount(offset, 2, 2);
+      SetSubtreeCount(scaling, 2, 2);
+
+      #endregion
+
+      #region child symbols config
+
+      AddAllowedChildSymbol(StartSymbol, offset);
+
+      //Define childs for offset
+      AddAllowedChildSymbol(offset, scaling, 0);
+      AddAllowedChildSymbol(offset, constant, 1);
+
+      //Define childs for scaling
+      foreach (var symb in allSymbols) AddAllowedChildSymbol(scaling, symb, 0);
+      AddAllowedChildSymbol(scaling, constant, 1);
+
+      //Define childs for realvalue symbols
+      foreach (var symb in realValueSymbols) {
+        foreach (var c in realValueSymbols) AddAllowedChildSymbol(symb, c);
+      }
+
+      #endregion
+
+      Symbols.First(s => s is Cube).Enabled = false;
+      Symbols.First(s => s is CubeRoot).Enabled = false;
+      Symbols.First(s => s is Absolute).Enabled = false;
+    }
+  }
+}
Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj	(revision 17928)
+++ branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj	(revision 18027)
@@ -99,6 +99,7 @@
   </PropertyGroup>
   <ItemGroup>
-    <Reference Include="ALGLIB-3.7.0, Version=3.7.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
-      <HintPath>..\..\bin\ALGLIB-3.7.0.dll</HintPath>
+    <Reference Include="ALGLIB-3.17.0, Version=3.17.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\bin\ALGLIB-3.17.0.dll</HintPath>
       <Private>False</Private>
     </Reference>
@@ -158,5 +159,5 @@
     <Compile Include="Formatters\SymbolicDataAnalysisExpressionCSharpFormatter.cs" />
     <Compile Include="Grammars\DataAnalysisGrammar.cs" />
-    <Compile Include="Grammars\IntervalArithmeticGrammar.cs" />
+    <Compile Include="Grammars\LinearScalingGrammar.cs" />
     <Compile Include="Hashing\HashExtensions.cs" />
     <Compile Include="Hashing\HashUtil.cs" />
Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/IntervalArithBoundsEstimator.cs
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/IntervalArithBoundsEstimator.cs	(revision 17928)
+++ branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/IntervalArithBoundsEstimator.cs	(revision 18027)
@@ -223,4 +223,15 @@
             break;
           }
+        case OpCodes.Power: {
+          var a = Evaluate(instructions, ref instructionCounter, nodeIntervals, variableIntervals);
+          var b = Evaluate(instructions, ref instructionCounter, nodeIntervals, variableIntervals);
+          // support only integer powers
+          if (b.LowerBound == b.UpperBound && Math.Truncate(b.LowerBound) == b.LowerBound) {
+            result = Interval.Power(a, (int)b.LowerBound);
+          } else {
+            throw new NotSupportedException("Interval is only supported for integer powers");
+          }
+          break;
+        }
         case OpCodes.Absolute: {
             var argumentInterval = Evaluate(instructions, ref instructionCounter, nodeIntervals, variableIntervals);
@@ -329,4 +340,5 @@
           !(n.Symbol is Cube) &&
           !(n.Symbol is CubeRoot) &&
+          !(n.Symbol is Power) &&
           !(n.Symbol is Absolute) &&
           !(n.Symbol is AnalyticQuotient)
Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/IntervalInterpreter.cs
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/IntervalInterpreter.cs	(revision 17928)
+++ branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/IntervalInterpreter.cs	(revision 18027)
@@ -283,4 +283,16 @@
             break;
           }
+        case OpCodes.Power: {
+            var a = Evaluate(instructions, ref instructionCounter, nodeIntervals, variableIntervals);
+            var b = Evaluate(instructions, ref instructionCounter, nodeIntervals, variableIntervals);
+            // support only integer powers
+            if (b.LowerBound == b.UpperBound && Math.Truncate(b.LowerBound) == b.LowerBound) {
+              result = Interval.Power(a, (int)b.LowerBound);
+            } else {
+              throw new NotSupportedException("Interval is only supported for integer powers");
+            }
+            break;
+          }
+
         case OpCodes.Absolute: {
             var argumentInterval = Evaluate(instructions, ref instructionCounter, nodeIntervals, variableIntervals);
@@ -309,7 +321,6 @@
 
     public static bool IsCompatible(ISymbolicExpressionTree tree) {
-      var containsUnknownSymbols = (
-        from n in tree.Root.GetSubtree(0).IterateNodesPrefix()
-        where
+      foreach (var n in tree.Root.GetSubtree(0).IterateNodesPrefix()) {
+        if (
           !(n.Symbol is Variable) &&
           !(n.Symbol is Constant) &&
@@ -329,8 +340,15 @@
           !(n.Symbol is Cube) &&
           !(n.Symbol is CubeRoot) &&
+          !(n.Symbol is Power) &&
           !(n.Symbol is Absolute) &&
-          !(n.Symbol is AnalyticQuotient)
-        select n).Any();
-      return !containsUnknownSymbols;
+          !(n.Symbol is AnalyticQuotient)) return false;
+
+        else if (n.Symbol is Power) {
+          // only integer exponents are supported
+          var exp = n.GetSubtree(1) as ConstantTreeNode;
+          if (exp == null || exp.Value != Math.Truncate(exp.Value)) return false;
+        }
+      }
+      return true;
     }
   }
Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/OpCodes.cs
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/OpCodes.cs	(revision 17928)
+++ branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/OpCodes.cs	(revision 18027)
@@ -144,5 +144,5 @@
       { typeof(Cosine), OpCodes.Cos },
       { typeof(Tangent), OpCodes.Tan },
-      { typeof (HyperbolicTangent), OpCodes.Tanh},
+      { typeof(HyperbolicTangent), OpCodes.Tanh},
       { typeof(Logarithm), OpCodes.Log },
       { typeof(Exponential), OpCodes.Exp },
Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Plugin.cs.frame
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Plugin.cs.frame	(revision 17928)
+++ branches/3026_IntegrationIntoSymSpace/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Plugin.cs.frame	(revision 18027)
@@ -28,5 +28,5 @@
   [Plugin("HeuristicLab.Problems.DataAnalysis.Symbolic","Provides base classes for symbolic data analysis tasks.", "3.4.12.$WCREV$")]
   [PluginFile("HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.dll", PluginFileType.Assembly)]
-  [PluginDependency("HeuristicLab.ALGLIB", "3.7.0")]
+  [PluginDependency("HeuristicLab.ALGLIB", "3.17.0")]
   [PluginDependency("HeuristicLab.AutoDiff", "1.0")]
   [PluginDependency("HeuristicLab.Analysis", "3.3")]
