Index: /stable/HeuristicLab 3.3.sln
===================================================================
--- /stable/HeuristicLab 3.3.sln	(revision 11157)
+++ /stable/HeuristicLab 3.3.sln	(revision 11158)
@@ -68,10 +68,8 @@
 		{96E5ED5B-187D-4012-9CDA-D85CDAD38342} = {96E5ED5B-187D-4012-9CDA-D85CDAD38342}
 		{C664305E-497C-4533-A140-967DEDB05C19} = {C664305E-497C-4533-A140-967DEDB05C19}
-		{3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E} = {3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E}
 		{7EA0985E-A1D6-4FA7-B30A-2633FDFB01F0} = {7EA0985E-A1D6-4FA7-B30A-2633FDFB01F0}
 		{E10F395F-C8A6-48AD-B470-9AA7A1F43809} = {E10F395F-C8A6-48AD-B470-9AA7A1F43809}
 		{B7A64A60-B538-479F-9C47-A3180C458F6C} = {B7A64A60-B538-479F-9C47-A3180C458F6C}
 		{0C378762-D5DB-488A-8931-2BA42B1B7CBF} = {0C378762-D5DB-488A-8931-2BA42B1B7CBF}
-		{3B90F866-70F8-43EF-A541-51819D255B7B} = {3B90F866-70F8-43EF-A541-51819D255B7B}
 		{07486E68-1517-4B9D-A58D-A38E99AE71AB} = {07486E68-1517-4B9D-A58D-A38E99AE71AB}
 		{4AE3FC69-C575-42D2-BC46-0FAD5850EFC5} = {4AE3FC69-C575-42D2-BC46-0FAD5850EFC5}
@@ -117,5 +115,4 @@
 		{AB687BBE-1BFE-476B-906D-44237135431D} = {AB687BBE-1BFE-476B-906D-44237135431D}
 		{66D249C3-A01D-42A8-82A2-919BC8EC3D83} = {66D249C3-A01D-42A8-82A2-919BC8EC3D83}
-		{362A5DC3-969D-43FB-A552-D2F52B780188} = {362A5DC3-969D-43FB-A552-D2F52B780188}
 		{21977CC3-1757-4B3B-87BD-FF817AAA900F} = {21977CC3-1757-4B3B-87BD-FF817AAA900F}
 		{E4CFB0C3-0589-4893-B38E-8BEDF885C765} = {E4CFB0C3-0589-4893-B38E-8BEDF885C765}
@@ -398,8 +395,4 @@
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Problems.ExternalEvaluation.Matlab-3.3", "HeuristicLab.Problems.ExternalEvaluation.Matlab\3.3\HeuristicLab.Problems.ExternalEvaluation.Matlab-3.3.csproj", "{362A5DC3-969D-43FB-A552-D2F52B780188}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.DataPreprocessing-3.4", "HeuristicLab.DataPreprocessing\3.4\HeuristicLab.DataPreprocessing-3.4.csproj", "{3B90F866-70F8-43EF-A541-51819D255B7B}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.DataPreprocessing.Views-3.4", "HeuristicLab.DataPreprocessing.Views\3.4\HeuristicLab.DataPreprocessing.Views-3.4.csproj", "{3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E}"
 EndProject
 Global
@@ -1937,24 +1930,4 @@
 		{362A5DC3-969D-43FB-A552-D2F52B780188}.Release|x86.ActiveCfg = Release|x86
 		{362A5DC3-969D-43FB-A552-D2F52B780188}.Release|x86.Build.0 = Release|x86
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Debug|x64.ActiveCfg = Debug|x64
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Debug|x64.Build.0 = Debug|x64
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Debug|x86.ActiveCfg = Debug|x86
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Debug|x86.Build.0 = Debug|x86
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Release|Any CPU.Build.0 = Release|Any CPU
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Release|x64.ActiveCfg = Release|x64
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Release|x64.Build.0 = Release|x64
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Release|x86.ActiveCfg = Release|x86
-		{3B90F866-70F8-43EF-A541-51819D255B7B}.Release|x86.Build.0 = Release|x86
-		{3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E}.Debug|x64.ActiveCfg = Debug|Any CPU
-		{3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E}.Debug|x86.ActiveCfg = Debug|Any CPU
-		{3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E}.Release|Any CPU.Build.0 = Release|Any CPU
-		{3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E}.Release|x64.ActiveCfg = Release|Any CPU
-		{3FC7515E-D8A0-41FE-8CFA-50E3ADA61A1E}.Release|x86.ActiveCfg = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
Index: /stable/HeuristicLab.Data.Views/3.3/StringConvertibleMatrixView.cs
===================================================================
--- /stable/HeuristicLab.Data.Views/3.3/StringConvertibleMatrixView.cs	(revision 11157)
+++ /stable/HeuristicLab.Data.Views/3.3/StringConvertibleMatrixView.cs	(revision 11158)
@@ -36,5 +36,5 @@
   public partial class StringConvertibleMatrixView : AsynchronousContentView {
     protected int[] virtualRowIndices;
-    protected List<KeyValuePair<int, SortOrder>> sortedColumnIndices;
+    private List<KeyValuePair<int, SortOrder>> sortedColumnIndices;
     private RowComparer rowComparer;
 
@@ -261,5 +261,5 @@
 
     #region DataGridView Events
-    protected virtual void dataGridView_CellValidating(object sender, DataGridViewCellValidatingEventArgs e) {
+    private void dataGridView_CellValidating(object sender, DataGridViewCellValidatingEventArgs e) {
       if (!dataGridView.ReadOnly) {
         string errorMessage;
@@ -270,5 +270,5 @@
       }
     }
-    protected virtual void dataGridView_CellParsing(object sender, DataGridViewCellParsingEventArgs e) {
+    private void dataGridView_CellParsing(object sender, DataGridViewCellParsingEventArgs e) {
       if (!dataGridView.ReadOnly) {
         string value = e.Value.ToString();
@@ -364,5 +364,5 @@
     }
 
-    protected virtual void PasteValuesToDataGridView() {
+    private void PasteValuesToDataGridView() {
       string[,] values = SplitClipboardString(Clipboard.GetText());
       int rowIndex = 0;
@@ -432,5 +432,5 @@
     }
 
-    protected void Sort() {
+    private void Sort() {
       virtualRowIndices = Sort(sortedColumnIndices);
       UpdateSortGlyph();
@@ -542,5 +542,5 @@
     }
 
-    protected virtual void dataGridView_SelectionChanged(object sender, EventArgs e) {
+    private void dataGridView_SelectionChanged(object sender, EventArgs e) {
       string stringFormat = "{0,20:0.0000}";
       statisticsTextBox.Text = string.Empty;
Index: /stable/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.Designer.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.Designer.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.Designer.cs	(revision 11158)
@@ -19,4 +19,5 @@
  */
 #endregion
+
 
 namespace HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views {
@@ -48,5 +49,4 @@
       this.exportFileDialog = new System.Windows.Forms.SaveFileDialog();
       this.btnSimplify = new System.Windows.Forms.Button();
-      this.transformModelButton = new System.Windows.Forms.Button();
       ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit();
       this.splitContainer.Panel1.SuspendLayout();
@@ -61,5 +61,4 @@
       this.flowLayoutPanel.Controls.Add(this.btnSimplify);
       this.flowLayoutPanel.Controls.Add(this.exportButton);
-      this.flowLayoutPanel.Controls.Add(this.transformModelButton);
       // 
       // btnSimplify
@@ -91,18 +90,4 @@
       this.toolTip.SetToolTip(this.exportButton, "Exports the symbolic regression solution to Excel.");
       // 
-      // transformModelButton
-      // 
-      this.transformModelButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
-      this.transformModelButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Event;
-      this.transformModelButton.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
-      this.transformModelButton.Name = "transformModelButton";
-      this.transformModelButton.Size = new System.Drawing.Size(135, 24);
-      this.transformModelButton.TabIndex = 9;
-      this.transformModelButton.Text = "Backtransform Model";
-      this.transformModelButton.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-      this.transformModelButton.UseVisualStyleBackColor = true;
-      this.transformModelButton.Click += new System.EventHandler(this.transformModelButton_Click);
-      this.toolTip.SetToolTip(this.transformModelButton, "Backtransform model based on the stored transformations.");
-      // 
       // SymbolicRegressionSolutionView
       // 
@@ -123,5 +108,4 @@
     protected System.Windows.Forms.Button exportButton;
     protected System.Windows.Forms.Button btnSimplify;
-    protected System.Windows.Forms.Button transformModelButton;
   }
 }
Index: /stable/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.cs	(revision 11158)
@@ -45,10 +45,8 @@
       btnSimplify.Enabled = Content != null && !Locked && Content.ProblemData.TrainingIndices.Any(); // simplification is only possible if there are trainings samples
       exportButton.Enabled = Content != null && !Locked;
-      transformModelButton.Visible = Content != null && Content.ProblemData.Transformations.Any();
-      transformModelButton.Enabled = Content != null && !Locked;
     }
 
     private void btn_SimplifyModel_Click(object sender, EventArgs e) {
-      var view = new InteractiveSymbolicRegressionSolutionSimplifierView();
+      InteractiveSymbolicRegressionSolutionSimplifierView view = new InteractiveSymbolicRegressionSolutionSimplifierView();
       view.Content = (SymbolicRegressionSolution)this.Content.Clone();
       view.Show();
@@ -59,4 +57,5 @@
       exportFileDialog.Filter = exporter.FileTypeFilter;
       if (exportFileDialog.ShowDialog(this) == DialogResult.OK) {
+
         var name = exportFileDialog.FileName;
         using (BackgroundWorker bg = new BackgroundWorker()) {
@@ -68,17 +67,4 @@
       }
     }
-
-    private void transformModelButton_Click(object sender, EventArgs e) {
-      var mapper = new TransformationToSymbolicTreeMapper();
-      var transformator = new SymbolicExpressionTreeBacktransformator(mapper);
-
-      var transformations = Content.ProblemData.Transformations;
-      var targetVar = Content.ProblemData.TargetVariable;
-
-      var transformedModel = (ISymbolicRegressionModel)transformator.Backtransform(Content.Model, transformations, targetVar);
-      var transformedSolution = new SymbolicRegressionSolution(transformedModel, (IRegressionProblemData)Content.ProblemData.Clone());
-
-      MainFormManager.MainForm.ShowContent(transformedSolution);
-    }
   }
 }
Index: /stable/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj	(revision 11158)
@@ -126,6 +126,4 @@
       <SubType>Code</SubType>
     </Compile>
-    <Compile Include="Interfaces\IModelBacktransformator.cs" />
-    <Compile Include="SymbolicExpressionTreeBacktransformator.cs" />
     <Compile Include="SymbolicDataAnalysisExpressionPruningOperator.cs" />
     <Compile Include="Analyzers\SymbolicDataAnalysisVariableFrequencyAnalyzer.cs" />
@@ -144,5 +142,5 @@
     <Compile Include="Crossovers\SymbolicDataAnalysisExpressionSemanticSimilarityCrossover.cs" />
     <Compile Include="Formatters\SymbolicDataAnalysisExpressionExcelFormatter.cs" />
-    <Compile Include="Formatters\SymbolicDataAnalysisExpressionSmalltalkFormatter.cs" />
+	<Compile Include="Formatters\SymbolicDataAnalysisExpressionSmalltalkFormatter.cs" />
     <Compile Include="Interfaces\ISymbolicDataAnalysisExpressionCrossover.cs" />
     <Compile Include="Interfaces\ISymbolicDataAnalysisImpactValuesCalculator.cs" />
@@ -224,5 +222,4 @@
     <Compile Include="Symbols\VariableConditionTreeNode.cs" />
     <Compile Include="Symbols\VariableTreeNode.cs" />
-    <Compile Include="TransformationToSymbolicTreeMapper.cs" />
     <None Include="HeuristicLab.snk" />
     <None Include="Plugin.cs.frame" />
Index: able/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interfaces/IModelBacktransformator.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Interfaces/IModelBacktransformator.cs	(revision 11157)
+++ 	(revision )
@@ -1,29 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2013 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;
-
-
-namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
-  public interface IModelBacktransformator {
-    ISymbolicDataAnalysisModel Backtransform(ISymbolicDataAnalysisModel model, IEnumerable<ITransformation> transformations, string targetVariable);
-  }
-}
Index: able/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/SymbolicExpressionTreeBacktransformator.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/SymbolicExpressionTreeBacktransformator.cs	(revision 11157)
+++ 	(revision )
@@ -1,97 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2013 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 HeuristicLab.Common;
-using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
-
-namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
-  public class SymbolicExpressionTreeBacktransformator : IModelBacktransformator {
-    private readonly ITransformationMapper<ISymbolicExpressionTreeNode> transformationMapper;
-
-    public SymbolicExpressionTreeBacktransformator(ITransformationMapper<ISymbolicExpressionTreeNode> transformationMapper) {
-      this.transformationMapper = transformationMapper;
-    }
-
-    public ISymbolicDataAnalysisModel Backtransform(ISymbolicDataAnalysisModel model, IEnumerable<ITransformation> transformations, string targetVariable) {
-      var symbolicModel = (ISymbolicDataAnalysisModel)model.Clone();
-
-      foreach (var transformation in transformations.Reverse()) {
-        ApplyBacktransformation(transformation, symbolicModel.SymbolicExpressionTree, targetVariable);
-      }
-
-      return symbolicModel;
-    }
-
-    private void ApplyBacktransformation(ITransformation transformation, ISymbolicExpressionTree symbolicExpressionTree, string targetVariable) {
-      if (transformation.Column != targetVariable) {
-        var variableNodes = symbolicExpressionTree.IterateNodesBreadth()
-          .OfType<VariableTreeNode>()
-          .Where(n => n.VariableName == transformation.Column);
-        ApplyRegularBacktransformation(transformation, variableNodes);
-      } else if (!(transformation is CopyColumnTransformation)) {
-        ApplyInverseBacktransformation(transformation, symbolicExpressionTree);
-      }
-    }
-
-    private void ApplyRegularBacktransformation(ITransformation transformation, IEnumerable<VariableTreeNode> variableNodes) {
-      foreach (var variableNode in variableNodes) {
-        // generate new subtrees because same subtree cannot be added more than once
-        var transformationTree = transformationMapper.GenerateModel(transformation);
-        SwapVariableWithTree(variableNode, transformationTree);
-      }
-    }
-
-    private void ApplyInverseBacktransformation(ITransformation transformation, ISymbolicExpressionTree symbolicExpressionTree) {
-      var startSymbol = symbolicExpressionTree.Root.GetSubtree(0);
-      var modelTree = startSymbol.GetSubtree(0);
-      startSymbol.RemoveSubtree(0);
-
-      var transformationTree = transformationMapper.GenerateInverseModel(transformation);
-      var variableNode = transformationTree.IterateNodesBreadth()
-        .OfType<VariableTreeNode>()
-        .Single(n => n.VariableName == transformation.Column);
-
-      SwapVariableWithTree(variableNode, modelTree);
-
-      startSymbol.AddSubtree(transformationTree);
-    }
-
-    private void SwapVariableWithTree(VariableTreeNode variableNode, ISymbolicExpressionTreeNode treeNode) {
-      var parent = variableNode.Parent;
-      int index = parent.IndexOfSubtree(variableNode);
-      parent.RemoveSubtree(index);
-
-      if (!variableNode.Weight.IsAlmost(1.0))
-        treeNode = CreateNodeFromWeight(treeNode, variableNode);
-
-      parent.InsertSubtree(index, treeNode);
-    }
-
-    private ISymbolicExpressionTreeNode CreateNodeFromWeight(ISymbolicExpressionTreeNode transformationTree, VariableTreeNode variableNode) {
-      var multiplicationNode = new SymbolicExpressionTreeNode(new Multiplication());
-      multiplicationNode.AddSubtree(new ConstantTreeNode(new Constant()) { Value = variableNode.Weight });
-      multiplicationNode.AddSubtree(transformationTree);
-      return multiplicationNode;
-    }
-  }
-}
Index: able/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/TransformationToSymbolicTreeMapper.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/TransformationToSymbolicTreeMapper.cs	(revision 11157)
+++ 	(revision )
@@ -1,294 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2013 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;
-using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
-
-namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
-  public class TransformationToSymbolicTreeMapper : ITransformationMapper<ISymbolicExpressionTreeNode> {
-    private ITransformation transformation;
-    private string column;
-
-    #region ITransformationMapper<ISymbolicExpressionTree> Members
-
-    public ISymbolicExpressionTreeNode GenerateModel(ITransformation transformation) {
-      InitComponents(transformation);
-
-      if (transformation is LinearTransformation) {
-        return GenerateModelForLinearTransformation();
-      } else if (transformation is ExponentialTransformation) {
-        return GenerateModelForExponentialTransformation();
-      } else if (transformation is LogarithmicTransformation) {
-        return GenerateModelForLogarithmicTransformation();
-      } else if (transformation is PowerTransformation) {
-        return GenerateModelForPowerTransformation();
-      } else if (transformation is ReciprocalTransformation) {
-        return GenerateModelForReciprocalTransformation();
-      } else if (transformation is ShiftStandardDistributionTransformation) {
-        return GenerateModelForShiftStandardDistributionTransformation();
-      } else if (transformation is CopyColumnTransformation) {
-        return GenerateTreeNodeForCopyColumnTransformation();
-      }
-      throw new NotImplementedException();
-    }
-
-    public ISymbolicExpressionTreeNode GenerateInverseModel(ITransformation transformation) {
-      InitComponents(transformation);
-
-      if (transformation is LinearTransformation) {
-        return GenerateInverseModelForLinearTransformation();
-      } else if (transformation is ExponentialTransformation) {
-        return GenerateInverseModelForExponentialTransformation();
-      } else if (transformation is LogarithmicTransformation) {
-        return GenerateInverseModelForLogarithmicTransformation();
-      } else if (transformation is PowerTransformation) {
-        return GenerateInverseModelForPowerTransformation();
-      } else if (transformation is ReciprocalTransformation) {
-        return GenerateInverseModelForReciprocalTransformation();
-      } else if (transformation is ShiftStandardDistributionTransformation) {
-        GenerateInverseModelForShiftStandardDistributionTransformation();
-      } else if (transformation is CopyColumnTransformation) {
-        return GenerateTreeNodeForCopyColumnTransformation();
-      }
-
-      throw new NotImplementedException();
-    }
-
-    #endregion
-
-    // helper
-
-    private ISymbolicExpressionTreeNode GenerateModelForLinearTransformation() {
-      var linearTransformation = (LinearTransformation)transformation;
-      var kValue = linearTransformation.Multiplier;
-      var dValue = linearTransformation.Addend;
-
-      // k * x
-      var multiplicationNode = new Multiplication().CreateTreeNode();
-      var kNode = CreateConstantTreeNode("k", kValue);
-      var xNode = CreateVariableTreeNode(column, "x");
-      multiplicationNode.AddSubtree(kNode);
-      multiplicationNode.AddSubtree(xNode);
-
-      // ( k * x ) + d
-      var additionNode = new Addition().CreateTreeNode();
-      var dNode = CreateConstantTreeNode("d", dValue);
-      additionNode.AddSubtree(multiplicationNode);
-      additionNode.AddSubtree(dNode);
-
-      return additionNode;
-    }
-
-    private ISymbolicExpressionTreeNode GenerateInverseModelForLinearTransformation() {
-      var linearTransformation = (LinearTransformation)transformation;
-      var kValue = linearTransformation.Multiplier;
-      var dValue = linearTransformation.Addend;
-
-      // x - d
-      var substractionNode = new Subtraction().CreateTreeNode();
-      var dNode = CreateConstantTreeNode("d", dValue);
-      var xNode = CreateVariableTreeNode(column, "x");
-      substractionNode.AddSubtree(xNode);
-      substractionNode.AddSubtree(dNode);
-
-      // ( x - d ) / k
-      var divisionNode = new Division().CreateTreeNode();
-      var kNode = CreateConstantTreeNode("k", kValue);
-      divisionNode.AddSubtree(substractionNode);
-      divisionNode.AddSubtree(kNode);
-
-      return divisionNode;
-    }
-
-
-    private ISymbolicExpressionTreeNode GenerateModelForExponentialTransformation() {
-      var exponentialTransformation = (ExponentialTransformation)transformation;
-      var bValue = exponentialTransformation.Base;
-
-      return GenTreePow_b_x(bValue);
-    }
-
-    private ISymbolicExpressionTreeNode GenerateInverseModelForExponentialTransformation() {
-      var exponentialTransformation = (ExponentialTransformation)transformation;
-      var bValue = exponentialTransformation.Base;
-
-      return GenTreeLog_x_b(bValue);
-    }
-
-
-    private ISymbolicExpressionTreeNode GenerateModelForLogarithmicTransformation() {
-      var logarithmicTransformation = (LogarithmicTransformation)transformation;
-      var bValue = logarithmicTransformation.Base;
-
-      return GenTreeLog_x_b(bValue);
-    }
-
-    private ISymbolicExpressionTreeNode GenerateInverseModelForLogarithmicTransformation() {
-      var logarithmicTransformation = (LogarithmicTransformation)transformation;
-      var bValue = logarithmicTransformation.Base;
-
-      return GenTreePow_b_x(bValue);
-    }
-
-
-    private ISymbolicExpressionTreeNode GenerateModelForPowerTransformation() {
-      var powerTransformation = (PowerTransformation)transformation;
-      var expValue = powerTransformation.Exponent;
-
-      // x ^ exp
-      var powerNode = new Power().CreateTreeNode();
-      var xNode = CreateVariableTreeNode(column, "x");
-      var expNode = CreateConstantTreeNode("exp", expValue);
-      powerNode.AddSubtree(xNode);
-      powerNode.AddSubtree(expNode);
-
-      return powerNode;
-    }
-
-    private ISymbolicExpressionTreeNode GenerateInverseModelForPowerTransformation() {
-      var powerTransformation = (PowerTransformation)transformation;
-      var expValue = powerTransformation.Exponent;
-
-      // rt(x, b)
-      var rootNode = new Root().CreateTreeNode();
-      var xNode = CreateVariableTreeNode(column, "x");
-      var bNode = CreateConstantTreeNode("b", expValue);
-      rootNode.AddSubtree(xNode);
-      rootNode.AddSubtree(bNode);
-
-      return rootNode;
-    }
-
-
-    private ISymbolicExpressionTreeNode GenerateModelForReciprocalTransformation() {
-      return GenTreeDiv_1_x();
-    }
-
-    private ISymbolicExpressionTreeNode GenerateInverseModelForReciprocalTransformation() {
-      return GenTreeDiv_1_x();
-    }
-
-
-    private ISymbolicExpressionTreeNode GenerateModelForShiftStandardDistributionTransformation() {
-      var shiftStandardDistributionTransformation = (ShiftStandardDistributionTransformation)transformation;
-      var m_orgValue = shiftStandardDistributionTransformation.OriginalMean;
-      var s_orgValue = shiftStandardDistributionTransformation.OriginalStandardDeviation;
-      var m_tarValue = shiftStandardDistributionTransformation.Mean;
-      var s_tarValue = shiftStandardDistributionTransformation.StandardDeviation;
-
-      return GenTreeShiftStdDist(column, m_orgValue, s_orgValue, m_tarValue, s_tarValue);
-    }
-
-    private ISymbolicExpressionTreeNode GenerateInverseModelForShiftStandardDistributionTransformation() {
-      var shiftStandardDistributionTransformation = (ShiftStandardDistributionTransformation)transformation;
-      var m_orgValue = shiftStandardDistributionTransformation.OriginalMean;
-      var s_orgValue = shiftStandardDistributionTransformation.OriginalStandardDeviation;
-      var m_tarValue = shiftStandardDistributionTransformation.Mean;
-      var s_tarValue = shiftStandardDistributionTransformation.StandardDeviation;
-
-      return GenTreeShiftStdDist(column, m_tarValue, s_tarValue, m_orgValue, s_orgValue);
-    }
-
-    private ISymbolicExpressionTreeNode GenerateTreeNodeForCopyColumnTransformation() {
-      var copyColumnTransformation = (CopyColumnTransformation)transformation;
-      var copiedColumnName = copyColumnTransformation.CopiedColumnName;
-
-      return CreateVariableTreeNode(copiedColumnName, copiedColumnName + "(original)");
-    }
-
-    // helper's helper:
-
-    private ISymbolicExpressionTreeNode GenTreeLog_x_b(double b) {
-      // log(x, b)
-      var logNode = new Logarithm().CreateTreeNode();
-      var bNode = CreateConstantTreeNode("b", b);
-      var xNode = CreateVariableTreeNode(column, "x");
-      logNode.AddSubtree(xNode);
-      logNode.AddSubtree(bNode);
-
-      return logNode;
-    }
-
-    private ISymbolicExpressionTreeNode GenTreePow_b_x(double b) {
-      // b ^ x
-      var powerNode = new Power().CreateTreeNode();
-      var bNode = CreateConstantTreeNode("b", b);
-      var xNode = CreateVariableTreeNode(column, "x");
-      powerNode.AddSubtree(bNode);
-      powerNode.AddSubtree(xNode);
-
-      return powerNode;
-    }
-
-    private ISymbolicExpressionTreeNode GenTreeDiv_1_x() {
-      // 1 / x
-      var divNode = new Division().CreateTreeNode();
-      var oneNode = CreateConstantTreeNode("1", 1.0);
-      var xNode = CreateVariableTreeNode(column, "x");
-      divNode.AddSubtree(oneNode);
-      divNode.AddSubtree(xNode);
-
-      return divNode;
-    }
-
-    private ISymbolicExpressionTreeNode GenTreeShiftStdDist(string variable, double m_org, double s_org, double m_tar, double s_tar) {
-      // x - m_org
-      var substractionNode = new Subtraction().CreateTreeNode();
-      var xNode = CreateVariableTreeNode(variable, "x");
-      var m_orgNode = CreateConstantTreeNode("m_org", m_org);
-      substractionNode.AddSubtree(xNode);
-      substractionNode.AddSubtree(m_orgNode);
-
-      // (x - m_org) / s_org
-      var divisionNode = new Division().CreateTreeNode();
-      var s_orgNode = CreateConstantTreeNode("s_org", s_org);
-      divisionNode.AddSubtree(substractionNode);
-      divisionNode.AddSubtree(s_orgNode);
-
-      // ((x - m_org) / s_org ) * s_tar
-      var multiplicationNode = new Multiplication().CreateTreeNode();
-      var s_tarNode = CreateConstantTreeNode("s_tar", s_tar);
-      multiplicationNode.AddSubtree(divisionNode);
-      multiplicationNode.AddSubtree(s_tarNode);
-
-      // ((x - m_org) / s_org ) * s_tar + m_tar
-      var additionNode = new Addition().CreateTreeNode();
-      var m_tarNode = CreateConstantTreeNode("m_tar", m_tar);
-      additionNode.AddSubtree(multiplicationNode);
-      additionNode.AddSubtree(m_tarNode);
-
-      return additionNode;
-    }
-
-    private ConstantTreeNode CreateConstantTreeNode(string description, double value) {
-      return new ConstantTreeNode(new Constant()) { Value = value };
-    }
-
-    private VariableTreeNode CreateVariableTreeNode(string name, string description) {
-      return new VariableTreeNode(new Variable(name, description)) { VariableName = name, Weight = 1.0 };
-    }
-
-    private void InitComponents(ITransformation transformation) {
-      this.transformation = transformation;
-      column = transformation.Column;
-    }
-  }
-}
Index: /stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/ProblemData.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/ProblemData.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/ProblemData.cs	(revision 11158)
@@ -1627,6 +1627,6 @@
     }
 
-    public ProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IEnumerable<ITransformation> transformations = null)
-      : base(dataset, allowedInputVariables, transformations ?? Enumerable.Empty<ITransformation>()) {
+    public ProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable)
+      : base(dataset, allowedInputVariables) {
       var variables = InputVariables.Select(x => x.AsReadOnly()).ToList();
       Parameters.Add(new ConstrainedValueParameter<StringValue>(PriceChangeVariableParameterName, new ItemSet<StringValue>(variables), variables.First(x => x.Value == targetVariable)));
Index: /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/AbstractFeatureCorrelationView.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/AbstractFeatureCorrelationView.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/AbstractFeatureCorrelationView.cs	(revision 11158)
@@ -57,5 +57,4 @@
       partitionComboBox.DataSource = Partitions;
       partitionComboBox.SelectedItem = TRAININGSAMPLES;
-      progressPanel.Visible = false;
     }
 
@@ -79,5 +78,4 @@
         CalculateCorrelation();
       } else {
-        progressPanel.Visible = false;
         dataView.Maximum = 0;
         dataView.Minimum = 0;
Index: /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj	(revision 11158)
@@ -169,5 +169,4 @@
       <DependentUpon>FeatureCorrelationView.cs</DependentUpon>
     </Compile>
-    <Compile Include="Interfaces\IDataPreprocessorStarter.cs" />
     <Compile Include="MenuItems\ShrinkDataAnalysisRunsMenuItem.cs" />
     <Compile Include="Plugin.cs" />
Index: able/HeuristicLab.Problems.DataAnalysis.Views/3.4/Interfaces/IDataPreprocessorStarter.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/Interfaces/IDataPreprocessorStarter.cs	(revision 11157)
+++ 	(revision )
@@ -1,28 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2013 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.MainForm.WindowsForms;
-
-namespace HeuristicLab.Problems.DataAnalysis.Views {
-  public interface IDataPreprocessorStarter {
-    void Start(IDataAnalysisProblemData problemData, View currentView);
-  }
-}
Index: /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/ProblemDataView.Designer.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/ProblemDataView.Designer.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/ProblemDataView.Designer.cs	(revision 11158)
@@ -46,5 +46,4 @@
     private void InitializeComponent() {
       this.FeatureCorrelationButton = new System.Windows.Forms.Button();
-      this.DataPreprocessingButton = new System.Windows.Forms.Button();
       ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit();
       this.SuspendLayout();
@@ -72,19 +71,8 @@
       this.FeatureCorrelationButton.Click += new System.EventHandler(this.FeatureCorrelationButton_Click);
       // 
-      // DataPreprocessingButton
-      // 
-      this.DataPreprocessingButton.Location = new System.Drawing.Point(311, 45);
-      this.DataPreprocessingButton.Name = "DataPreprocessingButton";
-      this.DataPreprocessingButton.Size = new System.Drawing.Size(121, 24);
-      this.DataPreprocessingButton.TabIndex = 5;
-      this.DataPreprocessingButton.Text = "Data Preprocessing";
-      this.DataPreprocessingButton.UseVisualStyleBackColor = true;
-      this.DataPreprocessingButton.Click += new System.EventHandler(this.DataPreprocessingButton_Click);
-      // 
       // ProblemDataView
       // 
       this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-      this.Controls.Add(this.DataPreprocessingButton);
       this.Controls.Add(this.FeatureCorrelationButton);
       this.Name = "ProblemDataView";
@@ -94,5 +82,4 @@
       this.Controls.SetChildIndex(this.nameLabel, 0);
       this.Controls.SetChildIndex(this.FeatureCorrelationButton, 0);
-      this.Controls.SetChildIndex(this.DataPreprocessingButton, 0);
       ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).EndInit();
       this.ResumeLayout(false);
@@ -104,5 +91,4 @@
 
     protected System.Windows.Forms.Button FeatureCorrelationButton;
-    protected System.Windows.Forms.Button DataPreprocessingButton;
 
   }
Index: /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/ProblemDataView.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/ProblemDataView.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/ProblemDataView.cs	(revision 11158)
@@ -29,5 +29,4 @@
 using HeuristicLab.MainForm;
 using HeuristicLab.MainForm.WindowsForms;
-using HeuristicLab.PluginInfrastructure;
 
 namespace HeuristicLab.Problems.DataAnalysis.Views {
@@ -101,13 +100,4 @@
       e.Effect = e.AllowedEffect;
     }
-
-    private void DataPreprocessingButton_Click(object sender, EventArgs e) {
-      var preprocessingStarters = ApplicationManager.Manager.GetInstances<IDataPreprocessorStarter>();
-      var starter = preprocessingStarters.FirstOrDefault();
-      // TODO: handle possible multiple starters
-      if (starter != null) {
-        starter.Start(Content, this);
-      }
-    }
   }
 }
Index: /stable/HeuristicLab.Problems.DataAnalysis/3.4/Dataset.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/Dataset.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis/3.4/Dataset.cs	(revision 11158)
@@ -170,29 +170,4 @@
         yield return value;
     }
-
-    public IEnumerable<string> GetStringValues(string variableName) {
-      IList list;
-      if (!variableValues.TryGetValue(variableName, out list))
-        throw new ArgumentException("The variable " + variableName + " does not exist in the dataset.");
-      List<string> values = list as List<string>;
-      if (values == null) throw new ArgumentException("The variable " + variableName + " is not a string variable.");
-
-      //mkommend yield return used to enable lazy evaluation
-      foreach (string value in values)
-        yield return value;
-    }
-
-    public IEnumerable<DateTime> GetDateTimeValues(string variableName) {
-      IList list;
-      if (!variableValues.TryGetValue(variableName, out list))
-        throw new ArgumentException("The variable " + variableName + " does not exist in the dataset.");
-      List<DateTime> values = list as List<DateTime>;
-      if (values == null) throw new ArgumentException("The variable " + variableName + " is not a datetime variable.");
-
-      //mkommend yield return used to enable lazy evaluation
-      foreach (DateTime value in values)
-        yield return value;
-    }
-
     public ReadOnlyCollection<double> GetReadOnlyDoubleValues(string variableName) {
       IList list;
@@ -219,8 +194,4 @@
 
       return rows.Select(index => values[index]);
-    }
-
-    public bool VariableHasType<T>(string variableName) {
-      return variableValues[variableName] is IList<T>;
     }
 
Index: /stable/HeuristicLab.Problems.DataAnalysis/3.4/HeuristicLab.Problems.DataAnalysis-3.4.csproj
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/HeuristicLab.Problems.DataAnalysis-3.4.csproj	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis/3.4/HeuristicLab.Problems.DataAnalysis-3.4.csproj	(revision 11158)
@@ -141,13 +141,4 @@
     <Compile Include="Implementation\TimeSeriesPrognosis\TimeSeriesPrognosisSolution.cs" />
     <Compile Include="Implementation\TimeSeriesPrognosis\TimeSeriesPrognosisSolutionBase.cs" />
-    <Compile Include="Implementation\Transformations\CopyColumnTransformation.cs" />
-    <Compile Include="Implementation\Transformations\ExponentialTransformation.cs" />
-    <Compile Include="Implementation\Transformations\LinearTransformation.cs" />
-    <Compile Include="Implementation\Transformations\LogarithmicTransformation.cs" />
-    <Compile Include="Implementation\Transformations\PowerTransformation.cs" />
-    <Compile Include="Implementation\Transformations\ReciprocalTransformation.cs" />
-    <Compile Include="Implementation\Transformations\ShiftStandardDistributionTransformation.cs" />
-    <Compile Include="Implementation\Transformations\ShiftToRangeTransformation.cs" />
-    <Compile Include="Implementation\Transformations\Transformation.cs" />
     <Compile Include="Interfaces\Classification\IClassificationEnsembleModel.cs">
       <SubType>Code</SubType>
@@ -159,6 +150,4 @@
     <Compile Include="Interfaces\IDataAnalysisSolutionExporter.cs" />
     <Compile Include="Interfaces\IDependencyCalculator.cs" />
-    <Compile Include="Interfaces\ITransformation.cs" />
-    <Compile Include="Interfaces\ITransformationMapper.cs" />
     <Compile Include="Interfaces\Regression\IRegressionEnsembleModel.cs">
       <SubType>Code</SubType>
Index: /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblemData.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblemData.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblemData.cs	(revision 11158)
@@ -300,6 +300,6 @@
     }
 
-    public ClassificationProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IEnumerable<ITransformation> transformations = null)
-      : base(dataset, allowedInputVariables, transformations ?? Enumerable.Empty<ITransformation>()) {
+    public ClassificationProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable)
+      : base(dataset, allowedInputVariables) {
       var validTargetVariableValues = CheckVariablesForPossibleTargetVariables(dataset).Select(x => new StringValue(x).AsReadOnly()).ToList();
       var target = validTargetVariableValues.Where(x => x.Value == targetVariable).DefaultIfEmpty(validTargetVariableValues.First()).First();
Index: /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Clustering/ClusteringProblemData.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Clustering/ClusteringProblemData.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Clustering/ClusteringProblemData.cs	(revision 11158)
@@ -21,5 +21,4 @@
 
 using System.Collections.Generic;
-using System.Linq;
 using HeuristicLab.Common;
 using HeuristicLab.Core;
@@ -87,6 +86,6 @@
     }
 
-    public ClusteringProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, IEnumerable<ITransformation> transformations = null)
-      : base(dataset, allowedInputVariables, transformations ?? Enumerable.Empty<ITransformation>()) {
+    public ClusteringProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables)
+      : base(dataset, allowedInputVariables) {
     }
   }
Index: /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisProblemData.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisProblemData.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisProblemData.cs	(revision 11158)
@@ -38,5 +38,4 @@
     protected const string TrainingPartitionParameterName = "TrainingPartition";
     protected const string TestPartitionParameterName = "TestPartition";
-    protected const string TransformationsParameterName = "Transformations";
 
     #region parameter properites
@@ -52,7 +51,4 @@
     public IFixedValueParameter<IntRange> TestPartitionParameter {
       get { return (IFixedValueParameter<IntRange>)Parameters[TestPartitionParameterName]; }
-    }
-    public IFixedValueParameter<ReadOnlyItemList<ITransformation>> TransformationsParameter {
-      get { return (IFixedValueParameter<ReadOnlyItemList<ITransformation>>)Parameters[TransformationsParameterName]; }
     }
     #endregion
@@ -93,8 +89,4 @@
     }
 
-    public IEnumerable<ITransformation> Transformations {
-      get { return TransformationsParameter.Value; }
-    }
-
     public virtual bool IsTrainingSample(int index) {
       return index >= 0 && index < Dataset.Rows &&
@@ -119,12 +111,8 @@
     [StorableHook(HookType.AfterDeserialization)]
     private void AfterDeserialization() {
-      if (!Parameters.ContainsKey(TransformationsParameterName)) {
-        Parameters.Add(new FixedValueParameter<ReadOnlyItemList<ITransformation>>(TransformationsParameterName, "", new ItemList<ITransformation>().AsReadOnly()));
-        TransformationsParameter.Hidden = true;
-      }
       RegisterEventHandlers();
     }
 
-    protected DataAnalysisProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, IEnumerable<ITransformation> transformations = null) {
+    protected DataAnalysisProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables) {
       if (dataset == null) throw new ArgumentNullException("The dataset must not be null.");
       if (allowedInputVariables == null) throw new ArgumentNullException("The allowedInputVariables must not be null.");
@@ -142,13 +130,8 @@
       int testPartitionEnd = dataset.Rows;
 
-      var transformationsList = new ItemList<ITransformation>(transformations ?? Enumerable.Empty<ITransformation>());
-
       Parameters.Add(new FixedValueParameter<Dataset>(DatasetParameterName, "", dataset));
       Parameters.Add(new FixedValueParameter<ReadOnlyCheckedItemList<StringValue>>(InputVariablesParameterName, "", inputVariables.AsReadOnly()));
       Parameters.Add(new FixedValueParameter<IntRange>(TrainingPartitionParameterName, "", new IntRange(trainingPartitionStart, trainingPartitionEnd)));
       Parameters.Add(new FixedValueParameter<IntRange>(TestPartitionParameterName, "", new IntRange(testPartitionStart, testPartitionEnd)));
-      Parameters.Add(new FixedValueParameter<ReadOnlyItemList<ITransformation>>(TransformationsParameterName, "", transformationsList.AsReadOnly()));
-
-      TransformationsParameter.Hidden = true;
 
       ((ValueParameter<Dataset>)DatasetParameter).ReactOnValueToStringChangedAndValueItemImageChanged = false;
@@ -161,5 +144,4 @@
       TrainingPartition.ValueChanged += new EventHandler(Parameter_ValueChanged);
       TestPartition.ValueChanged += new EventHandler(Parameter_ValueChanged);
-      TransformationsParameter.ValueChanged += new EventHandler(Parameter_ValueChanged);
     }
 
Index: /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs	(revision 11158)
@@ -137,6 +137,6 @@
     }
 
-    public RegressionProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IEnumerable<ITransformation> transformations = null)
-      : base(dataset, allowedInputVariables, transformations ?? Enumerable.Empty<ITransformation>()) {
+    public RegressionProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable)
+      : base(dataset, allowedInputVariables) {
       var variables = InputVariables.Select(x => x.AsReadOnly()).ToList();
       Parameters.Add(new ConstrainedValueParameter<StringValue>(TargetVariableParameterName, new ItemSet<StringValue>(variables), variables.Where(x => x.Value == targetVariable).First()));
Index: /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/TimeSeriesPrognosis/TimeSeriesPrognosisProblemData.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/TimeSeriesPrognosis/TimeSeriesPrognosisProblemData.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/TimeSeriesPrognosis/TimeSeriesPrognosisProblemData.cs	(revision 11158)
@@ -1582,6 +1582,6 @@
       TrainingPartition.Start = 50;
     }
-    public TimeSeriesPrognosisProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IEnumerable<ITransformation> transformations = null)
-      : base(dataset, allowedInputVariables, targetVariable, transformations ?? Enumerable.Empty<ITransformation>()) {
+    public TimeSeriesPrognosisProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable)
+      : base(dataset, allowedInputVariables, targetVariable) {
       Parameters.Add(new FixedValueParameter<IntValue>(TrainingHorizonParameterName, "Specifies the horizon (how far the prognosis reaches in the future) for each training sample.", new IntValue(1)));
       Parameters.Add(new FixedValueParameter<IntValue>(TestHorizonParameterName, "Specifies the horizon (how far the prognosis reaches in the future) for each test sample.", new IntValue(1)));
@@ -1643,7 +1643,7 @@
 
       var trainingDataStart = TrainingIndices.First();
-
+      
       base.AdjustProblemDataProperties(problemData);
-
+      
       TestPartition.Start = trainingDataStart;
 
Index: /stable/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/IDataAnalysisProblemData.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/IDataAnalysisProblemData.cs	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/IDataAnalysisProblemData.cs	(revision 11158)
@@ -39,6 +39,4 @@
     IEnumerable<int> TestIndices { get; }
 
-    IEnumerable<ITransformation> Transformations { get; }
-
     bool IsTrainingSample(int index);
     bool IsTestSample(int index);
Index: able/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/ITransformation.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/ITransformation.cs	(revision 11157)
+++ 	(revision )
@@ -1,34 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2013 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 HeuristicLab.Core;
-
-namespace HeuristicLab.Problems.DataAnalysis {
-  public interface ITransformation : IParameterizedItem {
-    string ShortName { get; }
-    string Column { get; }
-  }
-
-  public interface ITransformation<T> : ITransformation {
-    IEnumerable<T> Apply(IEnumerable<T> data);
-  }
-}
Index: able/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/ITransformationMapper.cs
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/ITransformationMapper.cs	(revision 11157)
+++ 	(revision )
@@ -1,28 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2013 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
-
-
-namespace HeuristicLab.Problems.DataAnalysis {
-  public interface ITransformationMapper<out T> {
-    T GenerateModel(ITransformation transformation);
-    T GenerateInverseModel(ITransformation transformation);
-  }
-}
Index: /stable/HeuristicLab.Problems.DataAnalysis/3.4/Plugin.cs.frame
===================================================================
--- /stable/HeuristicLab.Problems.DataAnalysis/3.4/Plugin.cs.frame	(revision 11157)
+++ /stable/HeuristicLab.Problems.DataAnalysis/3.4/Plugin.cs.frame	(revision 11158)
@@ -37,5 +37,5 @@
   [PluginDependency("HeuristicLab.Parameters", "3.3")]
   [PluginDependency("HeuristicLab.Persistence", "3.3")]
-  [PluginDependency("HeuristicLab.Problems.Instances", "3.3")]  
+  [PluginDependency("HeuristicLab.Problems.Instances", "3.3")]
   public class HeuristicLabProblemsDataAnalysisPlugin : PluginBase {
   }
