Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Converters/TreeToTensorConverter.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Converters/TreeToTensorConverter.cs	(revision 17541)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Converters/TreeToTensorConverter.cs	(revision 17554)
@@ -158,5 +158,5 @@
       if (node.Symbol is Exponential) {
         return math_ops.pow(
-          Math.E,
+          (float)Math.E,
           ConvertNode(node.GetSubtree(0)));
       }
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/TypeCoherentVectorExpressionGrammar.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/TypeCoherentVectorExpressionGrammar.cs	(revision 17541)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/TypeCoherentVectorExpressionGrammar.cs	(revision 17554)
@@ -38,4 +38,6 @@
     private const string TerminalsName = "Terminals";
     private const string VectorAggregationName = "Aggregations";
+    private const string VectorStatisticsName = "Vector Statistics";
+    private const string VectorDistancesName = "Vector Distances";
     private const string ScalarSymbolsName = "Scalar Symbols";
 
@@ -89,4 +91,12 @@
       var sd = new StandardDeviation();
       var sum = new Sum();
+      var length = new Length() { Enabled = false };
+      var min = new Min() { Enabled = false };
+      var max = new Max() { Enabled = false };
+      var variance = new Variance() { Enabled = false };
+      var skewness = new Skewness() { Enabled = false };
+      var kurtosis = new Kurtosis() { Enabled = false };
+      var euclideanDistance = new EuclideanDistance() { Enabled = false };
+      var covariance = new Covariance() { Enabled = false };
       #endregion
 
@@ -120,5 +130,7 @@
       var powerSymbols = new GroupSymbol(PowerFunctionsName, new List<ISymbol> { square, sqrt, cube, cubeRoot, power, root });
       var terminalSymbols = new GroupSymbol(TerminalsName, new List<ISymbol> { constant, variable, binFactorVariable, factorVariable });
-      var aggregationSymbols = new GroupSymbol(VectorAggregationName, new List<ISymbol> { mean, sd, sum });
+      var statisticsSymbols = new GroupSymbol(VectorStatisticsName, new List<ISymbol> {mean, sd, sum, length, min, max, variance, skewness, kurtosis});
+      var distancesSymbols = new GroupSymbol(VectorDistancesName, new List<ISymbol> { euclideanDistance, covariance });
+      var aggregationSymbols = new GroupSymbol(VectorAggregationName, new List<ISymbol> { statisticsSymbols, distancesSymbols });
       var scalarSymbols = new GroupSymbol(ScalarSymbolsName, new List<ISymbol>() { arithmeticSymbols, trigonometricSymbols, exponentialAndLogarithmicSymbols, powerSymbols, terminalSymbols, aggregationSymbols });
 
@@ -151,5 +163,6 @@
       SetSubtreeCount(exponentialAndLogarithmicSymbols, 1, 1);
       SetSubtreeCount(terminalSymbols, 0, 0);
-      SetSubtreeCount(aggregationSymbols, 1, 1);
+      SetSubtreeCount(statisticsSymbols, 1, 1);
+      SetSubtreeCount(distancesSymbols, 2, 2);
 
       SetSubtreeCount(vectorarithmeticSymbols, 2, 2);
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj	(revision 17541)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj	(revision 17554)
@@ -47,4 +47,5 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
+    <LangVersion>latest</LangVersion>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
@@ -57,4 +58,5 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
+    <LangVersion>latest</LangVersion>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
@@ -67,4 +69,5 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
+    <LangVersion>latest</LangVersion>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
@@ -77,4 +80,5 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
+    <LangVersion>latest</LangVersion>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
@@ -87,4 +91,5 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
+    <LangVersion>latest</LangVersion>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
@@ -97,4 +102,5 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
+    <LangVersion>latest</LangVersion>
   </PropertyGroup>
   <ItemGroup>
@@ -233,8 +239,16 @@
     <Compile Include="SymbolicDataAnalysisSolutionImpactValuesCalculator.cs" />
     <Compile Include="Symbols\Addition.cs" />
+    <Compile Include="Symbols\Covariance.cs" />
+    <Compile Include="Symbols\EuclideanDistance.cs" />
     <Compile Include="Symbols\AnalyticQuotient.cs" />
     <Compile Include="Symbols\And.cs" />
     <Compile Include="Symbols\AutoregressiveVariable.cs" />
+    <Compile Include="Symbols\Length.cs" />
+    <Compile Include="Symbols\Max.cs" />
+    <Compile Include="Symbols\Min.cs" />
     <Compile Include="Symbols\Mean.cs" />
+    <Compile Include="Symbols\Kurtosis.cs" />
+    <Compile Include="Symbols\Skewness.cs" />
+    <Compile Include="Symbols\Variance.cs" />
     <Compile Include="Symbols\StandardDeviation.cs" />
     <Compile Include="Symbols\Sum.cs" />
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/OpCodes.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/OpCodes.cs	(revision 17541)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/OpCodes.cs	(revision 17554)
@@ -80,5 +80,14 @@
     Mean = 53,
     StandardDeviation = 54,
-    Sum = 55
+    Sum = 55,
+    Length = 56,
+    Min = 57,
+    Max = 58,
+    Variance = 59,
+    Skewness = 60,
+    Kurtosis = 61,
+    EuclideanDistance = 62 ,
+    Covariance = 63,
+
   }
   public static class OpCodes {
@@ -139,4 +148,12 @@
     public const byte StandardDeviation = (byte)OpCode.StandardDeviation;
     public const byte Sum = (byte)OpCode.Sum;
+    public const byte Length = (byte)OpCode.Length;
+    public const byte Min = (byte)OpCode.Min;
+    public const byte Max = (byte)OpCode.Max;
+    public const byte Variance = (byte)OpCode.Variance;
+    public const byte Skewness = (byte)OpCode.Skewness;
+    public const byte Kurtosis = (byte)OpCode.Kurtosis;
+    public const byte EuclideanDistance = (byte)OpCode.EuclideanDistance;
+    public const byte Covariance = (byte)OpCode.Covariance;
 
 
@@ -197,6 +214,13 @@
       { typeof(Mean), OpCodes.Mean },
       { typeof(StandardDeviation), OpCodes.StandardDeviation },
-      { typeof(Sum), OpCodes.Sum }
-
+      { typeof(Sum), OpCodes.Sum },
+      { typeof(Length), OpCodes.Length },
+      { typeof(Min), OpCodes.Min },
+      { typeof(Max), OpCodes.Max },
+      { typeof(Variance), OpCodes.Variance },
+      { typeof(Skewness), OpCodes.Skewness },
+      { typeof(Kurtosis), OpCodes.Kurtosis },
+      { typeof(EuclideanDistance), OpCodes.EuclideanDistance },
+      { typeof(Covariance), OpCodes.Covariance },
     };
 
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/SymbolicDataAnalysisExpressionTreeVectorInterpreter.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/SymbolicDataAnalysisExpressionTreeVectorInterpreter.cs	(revision 17541)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interpreter/SymbolicDataAnalysisExpressionTreeVectorInterpreter.cs	(revision 17554)
@@ -221,4 +221,15 @@
       return EvaluationResult.NaN;
     }
+    private static EvaluationResult AggregateMultipleApply(EvaluationResult lhs, EvaluationResult rhs,
+      Func<double, double, double> ssFunc = null,
+      Func<double, DoubleVector, double> svFunc = null,
+      Func<DoubleVector, double, double> vsFunc = null,
+      Func<DoubleVector, DoubleVector, double> vvFunc = null) {
+      if (lhs.IsScalar && rhs.IsScalar && ssFunc != null) return new EvaluationResult(ssFunc(lhs.Scalar, rhs.Scalar));
+      if (lhs.IsScalar && rhs.IsVector && svFunc != null) return new EvaluationResult(svFunc(lhs.Scalar, rhs.Vector));
+      if (lhs.IsVector && rhs.IsScalar && vsFunc != null) return new EvaluationResult(vsFunc(lhs.Vector, rhs.Scalar));
+      if (lhs.IsVector && rhs.IsVector && vvFunc != null) return new EvaluationResult(vvFunc(lhs.Vector, rhs.Vector));
+      return EvaluationResult.NaN;
+    }
 
     public virtual EvaluationResult Evaluate(IDataset dataset, ref int row, InterpreterState state) {
@@ -365,4 +376,60 @@
               v => v.Count > 1 ? Statistics.StandardDeviation(v) : 0);
           }
+        case OpCodes.Length: {
+          var cur = Evaluate(dataset, ref row, state);
+          return AggregateApply(cur,
+            s => 0,
+            v => v.Count > 1 ? v.Count : 0);
+        }
+        case OpCodes.Min: {
+          var cur = Evaluate(dataset, ref row, state);
+          return AggregateApply(cur,
+            s => 0,
+            v => v.Count > 1 ? Statistics.Minimum(v) : 0);
+        }
+        case OpCodes.Max: {
+          var cur = Evaluate(dataset, ref row, state);
+          return AggregateApply(cur,
+            s => 0,
+            v => v.Count > 1 ? Statistics.Maximum(v) : 0);
+        }
+        case OpCodes.Variance: {
+          var cur = Evaluate(dataset, ref row, state);
+          return AggregateApply(cur,
+            s => 0,
+            v => v.Count > 1 ? Statistics.Variance(v) : 0);
+        }
+        case OpCodes.Skewness: {
+          var cur = Evaluate(dataset, ref row, state);
+          return AggregateApply(cur,
+            s => 0,
+            v => v.Count > 1 ? Statistics.Skewness(v) : 0);
+        }
+        case OpCodes.Kurtosis: {
+          var cur = Evaluate(dataset, ref row, state);
+          return AggregateApply(cur,
+            s => 0,
+            v => v.Count > 1 ? Statistics.Kurtosis(v) : 0);
+        }
+        case OpCodes.EuclideanDistance: {
+          var x1 = Evaluate(dataset, ref row, state);
+          var x2 = Evaluate(dataset, ref row, state);
+          return AggregateMultipleApply(x1, x2,
+            //(s1, s2) => s1 - s2,
+            //(s1, v2) => Math.Sqrt((s1 - v2).PointwisePower(2).Sum()),
+            //(v1, s2) => Math.Sqrt((v1 - s2).PointwisePower(2).Sum()),
+            vvFunc: (v1, v2) => Math.Sqrt((v1 - v2).PointwisePower(2).Sum())
+          );
+        }
+        case OpCodes.Covariance: {
+          var x1 = Evaluate(dataset, ref row, state);
+          var x2 = Evaluate(dataset, ref row, state);
+          return AggregateMultipleApply(x1, x2,
+            //(s1, s2) => 0,
+            //(s1, v2) => 0,
+            //(v1, s2) => 0,
+            vvFunc: (v1, v2) => v1.Count > 1 && v2.Count > 1 ? Statistics.Covariance(v1, v2) : double.NaN
+          );
+        }
         case OpCodes.Variable: {
             if (row < 0 || row >= dataset.Rows) return EvaluationResult.NaN;
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Covariance.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Covariance.cs	(revision 17554)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Covariance.cs	(revision 17554)
@@ -0,0 +1,48 @@
+#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 HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
+using HEAL.Attic;
+namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
+  [StorableType("8B554834-78C9-4F2D-BD9F-902A77B598AB")]
+  [Item("Covariance", "Symbol that represents the covariance function.")]
+  public sealed class Covariance : Symbol {
+    private const int minimumArity = 2;
+    private const int maximumArity = 2;
+
+    public override int MinimumArity {
+      get { return minimumArity; }
+    }
+    public override int MaximumArity {
+      get { return maximumArity; }
+    }
+
+    [StorableConstructor]
+    private Covariance(StorableConstructorFlag _) : base(_) { }
+    private Covariance(Covariance original, Cloner cloner) : base(original, cloner) { }
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new Covariance(this, cloner);
+    }
+    public Covariance() : base("Covariance", "Symbol that represents the covariance function.") { }
+  }
+}
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/EuclideanDistance.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/EuclideanDistance.cs	(revision 17554)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/EuclideanDistance.cs	(revision 17554)
@@ -0,0 +1,48 @@
+#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 HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
+using HEAL.Attic;
+namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
+  [StorableType("5477A8C6-E557-4E2E-9326-16DF26F5D6A8")]
+  [Item("Euclidean Distance", "Symbol that represents the Euclidean distance function.")]
+  public sealed class EuclideanDistance : Symbol {
+    private const int minimumArity = 2;
+    private const int maximumArity = 2;
+
+    public override int MinimumArity {
+      get { return minimumArity; }
+    }
+    public override int MaximumArity {
+      get { return maximumArity; }
+    }
+
+    [StorableConstructor]
+    private EuclideanDistance(StorableConstructorFlag _) : base(_) { }
+    private EuclideanDistance(EuclideanDistance original, Cloner cloner) : base(original, cloner) { }
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new EuclideanDistance(this, cloner);
+    }
+    public EuclideanDistance() : base("Euclidean Distance", "Symbol that represents the Euclidean distance function.") { }
+  }
+}
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Kurtosis.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Kurtosis.cs	(revision 17554)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Kurtosis.cs	(revision 17554)
@@ -0,0 +1,48 @@
+#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 HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
+using HEAL.Attic;
+namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
+  [StorableType("FDE431E4-C20F-4203-9054-6175A8B734A7")]
+  [Item("Kurtosis", "Symbol that represents the kurtosis function.")]
+  public sealed class Kurtosis : Symbol {
+    private const int minimumArity = 1;
+    private const int maximumArity = 1;
+
+    public override int MinimumArity {
+      get { return minimumArity; }
+    }
+    public override int MaximumArity {
+      get { return maximumArity; }
+    }
+
+    [StorableConstructor]
+    private Kurtosis(StorableConstructorFlag _) : base(_) { }
+    private Kurtosis(Kurtosis original, Cloner cloner) : base(original, cloner) { }
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new Kurtosis(this, cloner);
+    }
+    public Kurtosis() : base("Kurtosis", "Symbol that represents the kurtosis function.") { }
+  }
+}
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Length.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Length.cs	(revision 17554)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Length.cs	(revision 17554)
@@ -0,0 +1,48 @@
+#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 HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
+using HEAL.Attic;
+namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
+  [StorableType("E3634514-DAC3-48FF-93D2-F3AD0E559C07")]
+  [Item("Length", "Symbol that represents the length function.")]
+  public sealed class Length : Symbol {
+    private const int minimumArity = 1;
+    private const int maximumArity = 1;
+
+    public override int MinimumArity {
+      get { return minimumArity; }
+    }
+    public override int MaximumArity {
+      get { return maximumArity; }
+    }
+
+    [StorableConstructor]
+    private Length(StorableConstructorFlag _) : base(_) { }
+    private Length(Length original, Cloner cloner) : base(original, cloner) { }
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new Length(this, cloner);
+    }
+    public Length() : base("Length", "Symbol that represents the length function.") { }
+  }
+}
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Max.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Max.cs	(revision 17554)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Max.cs	(revision 17554)
@@ -0,0 +1,49 @@
+#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 HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
+using HEAL.Attic;
+
+namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
+  [StorableType("1FFBD7DA-C474-4E99-B24F-AAD6B8B3EB35")]
+  [Item("Min", "Symbol that represents the max function.")]
+  public sealed class Max : Symbol {
+    private const int minimumArity = 1;
+    private const int maximumArity = 1;
+
+    public override int MinimumArity {
+      get { return minimumArity; }
+    }
+    public override int MaximumArity {
+      get { return maximumArity; }
+    }
+
+    [StorableConstructor]
+    private Max(StorableConstructorFlag _) : base(_) { }
+    private Max(Max original, Cloner cloner) : base(original, cloner) { }
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new Max(this, cloner);
+    }
+    public Max() : base("Max", "Symbol that represents the max function.") { }
+  }
+}
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Min.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Min.cs	(revision 17554)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Min.cs	(revision 17554)
@@ -0,0 +1,49 @@
+#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 HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
+using HEAL.Attic;
+
+namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
+  [StorableType("AB40A794-51A7-45ED-AF83-90D61BE4158D")]
+  [Item("Min", "Symbol that represents the min function.")]
+  public sealed class Min : Symbol {
+    private const int minimumArity = 1;
+    private const int maximumArity = 1;
+
+    public override int MinimumArity {
+      get { return minimumArity; }
+    }
+    public override int MaximumArity {
+      get { return maximumArity; }
+    }
+
+    [StorableConstructor]
+    private Min(StorableConstructorFlag _) : base(_) { }
+    private Min(Min original, Cloner cloner) : base(original, cloner) { }
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new Min(this, cloner);
+    }
+    public Min() : base("Min", "Symbol that represents the min function.") { }
+  }
+}
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Skewness.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Skewness.cs	(revision 17554)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Skewness.cs	(revision 17554)
@@ -0,0 +1,48 @@
+#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 HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
+using HEAL.Attic;
+namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
+  [StorableType("7C645DC6-6904-4E9C-A9DE-474F66AD6563")]
+  [Item("Skewness", "Symbol that represents the skewness function.")]
+  public sealed class Skewness : Symbol {
+    private const int minimumArity = 1;
+    private const int maximumArity = 1;
+
+    public override int MinimumArity {
+      get { return minimumArity; }
+    }
+    public override int MaximumArity {
+      get { return maximumArity; }
+    }
+
+    [StorableConstructor]
+    private Skewness(StorableConstructorFlag _) : base(_) { }
+    private Skewness(Skewness original, Cloner cloner) : base(original, cloner) { }
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new Skewness(this, cloner);
+    }
+    public Skewness() : base("Skewness", "Symbol that represents the skewness function.") { }
+  }
+}
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Variance.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Variance.cs	(revision 17554)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Symbols/Variance.cs	(revision 17554)
@@ -0,0 +1,48 @@
+#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 HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
+using HEAL.Attic;
+namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
+  [StorableType("E9371D4B-104A-43CF-82F9-4F3B41B2FC3D")]
+  [Item("Variance", "Symbol that represents the variance function.")]
+  public sealed class Variance : Symbol {
+    private const int minimumArity = 1;
+    private const int maximumArity = 1;
+
+    public override int MinimumArity {
+      get { return minimumArity; }
+    }
+    public override int MaximumArity {
+      get { return maximumArity; }
+    }
+
+    [StorableConstructor]
+    private Variance(StorableConstructorFlag _) : base(_) { }
+    private Variance(Variance original, Cloner cloner) : base(original, cloner) { }
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new Variance(this, cloner);
+    }
+    public Variance() : base("Variance", "Symbol that represents the variance function.") { }
+  }
+}
Index: branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/VectorData/VectorDataTestTwo.cs
===================================================================
--- branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/VectorData/VectorDataTestTwo.cs	(revision 17541)
+++ branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/VectorData/VectorDataTestTwo.cs	(revision 17554)
@@ -33,5 +33,5 @@
   public abstract class VectorDataTestTwo : ArtificialRegressionDataDescriptor {
 
-    protected const int Rows = 100;
+    protected const int Rows = 1000;
 
     public override string Description { get { return ""; } }
