Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4.csproj
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4.csproj	(revision 17546)
+++ branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4.csproj	(revision 17547)
@@ -197,7 +197,4 @@
     <Compile Include="SingleObjective\ConstantOptimizationAnalyzer.cs" />
     <Compile Include="SingleObjective\Evaluators\SymbolicRegressionMeanRelativeErrorEvaluator.cs" />
-    <Compile Include="SingleObjective\Evaluators\SymbolicRegressionSingleObjectiveConstraintConstOptEvaluator.cs" />
-    <Compile Include="SingleObjective\Evaluators\SymbolicRegressionSingleObjectiveConstraintPearsonRSquaredEvaluator.cs" />
-    <Compile Include="SymbolicRegressionConstraintAnalyzer.cs" />
     <Compile Include="SingleObjective\SymbolicRegressionSolutionsAnalyzer.cs" />
     <Compile Include="SymbolicRegressionPhenotypicDiversityAnalyzer.cs" />
Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/SymbolicRegressionSingleObjectiveProblem.cs
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/SymbolicRegressionSingleObjectiveProblem.cs	(revision 17546)
+++ branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/SymbolicRegressionSingleObjectiveProblem.cs	(revision 17547)
@@ -91,8 +91,4 @@
         changed = true;
       }
-      if (!Operators.OfType<SymbolicRegressionConstraintAnalyzer>().Any()) {
-        Operators.Add(new SymbolicRegressionConstraintAnalyzer());
-        changed = true;
-      }
       if (changed) {
         ParameterizeOperators();
@@ -117,5 +113,4 @@
       Operators.Add(new SymbolicRegressionSolutionsAnalyzer());
       Operators.Add(new SymbolicExpressionTreePhenotypicSimilarityCalculator());
-      Operators.Add(new SymbolicRegressionConstraintAnalyzer());
       Operators.Add(new SymbolicRegressionPhenotypicDiversityAnalyzer(Operators.OfType<SymbolicExpressionTreePhenotypicSimilarityCalculator>()) { DiversityResultName = "Phenotypic Diversity" });
       ParameterizeOperators();
Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj	(revision 17546)
+++ branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj	(revision 17547)
@@ -327,10 +327,4 @@
       <DependentUpon>ModifiableDatasetView.cs</DependentUpon>
     </Compile>
-    <Compile Include="ProblemDataConstraintView.cs">
-      <SubType>UserControl</SubType>
-    </Compile>
-    <Compile Include="ProblemDataConstraintView.designer.cs">
-      <DependentUpon>ProblemDataConstraintView.cs</DependentUpon>
-    </Compile>
     <Compile Include="Plugin.cs" />
     <Compile Include="ProblemDataView.cs">
@@ -575,10 +569,4 @@
     <Compile Include="TimeSeriesPrognosis\TimeSeriesPrognosisSolutionErrorCharacteristicsCurveView.Designer.cs">
       <DependentUpon>TimeSeriesPrognosisSolutionErrorCharacteristicsCurveView.cs</DependentUpon>
-    </Compile>
-    <Compile Include="IntervalConstraintView.cs">
-      <SubType>UserControl</SubType>
-    </Compile>
-    <Compile Include="IntervalConstraintView.Designer.cs">
-      <DependentUpon>IntervalConstraintView.cs</DependentUpon>
     </Compile>
     <None Include="HeuristicLab.snk" />
Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Views/3.4/IntervalConstraintView.Designer.cs
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Views/3.4/IntervalConstraintView.Designer.cs	(revision 17546)
+++ 	(revision )
@@ -1,248 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2019 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.Views {
-  partial class IntervalConstraintView {
-    /// <summary> 
-    /// Required designer variable.
-    /// </summary>
-    private System.ComponentModel.IContainer components = null;
-
-    /// <summary> 
-    /// Clean up any resources being used.
-    /// </summary>
-    /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
-    protected override void Dispose(bool disposing) {
-      if (disposing && (components != null)) {
-        components.Dispose();
-      }
-      base.Dispose(disposing);
-    }
-
-    #region Component Designer generated code
-
-    /// <summary> 
-    /// Required method for Designer support - do not modify 
-    /// the contents of this method with the code editor.
-    /// </summary>
-    private void InitializeComponent() {
-      this.components = new System.ComponentModel.Container();
-      this.lowerboundLabel = new System.Windows.Forms.Label();
-      this.upperboundLabel = new System.Windows.Forms.Label();
-      this.variableLabel = new System.Windows.Forms.Label();
-      this.numberderivationLabel = new System.Windows.Forms.Label();
-      this.upperboundInput = new System.Windows.Forms.TextBox();
-      this.lowerboundInput = new System.Windows.Forms.TextBox();
-      this.variableInput = new System.Windows.Forms.TextBox();
-      this.groupBox1 = new System.Windows.Forms.GroupBox();
-      this.enabledLabel = new System.Windows.Forms.Label();
-      this.label1 = new System.Windows.Forms.Label();
-      this.numberderivationInput = new System.Windows.Forms.ComboBox();
-      this.ischeckedCheckBox = new System.Windows.Forms.CheckBox();
-      this.expressionInput = new System.Windows.Forms.TextBox();
-      this.expressionLabel = new System.Windows.Forms.Label();
-      this.errorProvider = new System.Windows.Forms.ErrorProvider(this.components);
-      this.groupBox1.SuspendLayout();
-      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit();
-      this.SuspendLayout();
-      // 
-      // lowerboundLabel
-      // 
-      this.lowerboundLabel.AutoSize = true;
-      this.lowerboundLabel.Location = new System.Drawing.Point(8, 101);
-      this.lowerboundLabel.Name = "lowerboundLabel";
-      this.lowerboundLabel.Size = new System.Drawing.Size(90, 17);
-      this.lowerboundLabel.TabIndex = 2;
-      this.lowerboundLabel.Text = "Lowerbound:";
-      // 
-      // upperboundLabel
-      // 
-      this.upperboundLabel.AutoSize = true;
-      this.upperboundLabel.Location = new System.Drawing.Point(8, 126);
-      this.upperboundLabel.Name = "upperboundLabel";
-      this.upperboundLabel.Size = new System.Drawing.Size(91, 17);
-      this.upperboundLabel.TabIndex = 3;
-      this.upperboundLabel.Text = "Upperbound:";
-      // 
-      // variableLabel
-      // 
-      this.variableLabel.AutoSize = true;
-      this.variableLabel.Location = new System.Drawing.Point(8, 47);
-      this.variableLabel.Name = "variableLabel";
-      this.variableLabel.Size = new System.Drawing.Size(64, 17);
-      this.variableLabel.TabIndex = 7;
-      this.variableLabel.Text = "Variable:";
-      // 
-      // numberderivationLabel
-      // 
-      this.numberderivationLabel.AutoSize = true;
-      this.numberderivationLabel.Location = new System.Drawing.Point(8, 74);
-      this.numberderivationLabel.Name = "numberderivationLabel";
-      this.numberderivationLabel.Size = new System.Drawing.Size(84, 17);
-      this.numberderivationLabel.TabIndex = 8;
-      this.numberderivationLabel.Text = "#Derivation:";
-      // 
-      // upperboundInput
-      // 
-      this.upperboundInput.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-      this.upperboundInput.Location = new System.Drawing.Point(108, 123);
-      this.upperboundInput.Name = "upperboundInput";
-      this.upperboundInput.Size = new System.Drawing.Size(473, 22);
-      this.upperboundInput.TabIndex = 11;
-      this.upperboundInput.Validating += new System.ComponentModel.CancelEventHandler(this.upperboundInput_Validating);
-      this.upperboundInput.Validated += new System.EventHandler(this.upperboundInput_Validated);
-      // 
-      // lowerboundInput
-      // 
-      this.lowerboundInput.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-      this.lowerboundInput.Location = new System.Drawing.Point(108, 98);
-      this.lowerboundInput.Name = "lowerboundInput";
-      this.lowerboundInput.Size = new System.Drawing.Size(473, 22);
-      this.lowerboundInput.TabIndex = 12;
-      this.lowerboundInput.Validating += new System.ComponentModel.CancelEventHandler(this.lowerboundInput_Validating);
-      this.lowerboundInput.Validated += new System.EventHandler(this.lowerboundInput_Validated);
-      // 
-      // variableInput
-      // 
-      this.variableInput.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-      this.variableInput.Location = new System.Drawing.Point(108, 44);
-      this.variableInput.Name = "variableInput";
-      this.variableInput.Size = new System.Drawing.Size(473, 22);
-      this.variableInput.TabIndex = 15;
-      // 
-      // groupBox1
-      // 
-      this.groupBox1.Controls.Add(this.enabledLabel);
-      this.groupBox1.Controls.Add(this.label1);
-      this.groupBox1.Controls.Add(this.numberderivationInput);
-      this.groupBox1.Controls.Add(this.ischeckedCheckBox);
-      this.groupBox1.Controls.Add(this.expressionInput);
-      this.groupBox1.Controls.Add(this.expressionLabel);
-      this.groupBox1.Controls.Add(this.variableInput);
-      this.groupBox1.Controls.Add(this.lowerboundInput);
-      this.groupBox1.Controls.Add(this.upperboundInput);
-      this.groupBox1.Controls.Add(this.numberderivationLabel);
-      this.groupBox1.Controls.Add(this.variableLabel);
-      this.groupBox1.Controls.Add(this.upperboundLabel);
-      this.groupBox1.Controls.Add(this.lowerboundLabel);
-      this.groupBox1.Dock = System.Windows.Forms.DockStyle.Fill;
-      this.groupBox1.Location = new System.Drawing.Point(0, 0);
-      this.groupBox1.Name = "groupBox1";
-      this.groupBox1.Size = new System.Drawing.Size(587, 380);
-      this.groupBox1.TabIndex = 0;
-      this.groupBox1.TabStop = false;
-      this.groupBox1.Text = "Interval Constraints Detail";
-      // 
-      // enabledLabel
-      // 
-      this.enabledLabel.AutoSize = true;
-      this.enabledLabel.Location = new System.Drawing.Point(8, 153);
-      this.enabledLabel.Name = "enabledLabel";
-      this.enabledLabel.Size = new System.Drawing.Size(64, 17);
-      this.enabledLabel.TabIndex = 29;
-      this.enabledLabel.Text = "Enabled:";
-      // 
-      // label1
-      // 
-      this.label1.AutoSize = true;
-      this.label1.Location = new System.Drawing.Point(11, -105);
-      this.label1.Name = "label1";
-      this.label1.Size = new System.Drawing.Size(64, 17);
-      this.label1.TabIndex = 28;
-      this.label1.Text = "Enabled:";
-      // 
-      // numberderivationInput
-      // 
-      this.numberderivationInput.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-      this.numberderivationInput.FormattingEnabled = true;
-      this.numberderivationInput.Location = new System.Drawing.Point(108, 71);
-      this.numberderivationInput.Name = "numberderivationInput";
-      this.numberderivationInput.Size = new System.Drawing.Size(473, 24);
-      this.numberderivationInput.TabIndex = 27;
-      this.numberderivationInput.SelectedIndexChanged += new System.EventHandler(this.numberderivationInput_SelectedIndexChanged);
-      // 
-      // ischeckedCheckBox
-      // 
-      this.ischeckedCheckBox.AutoSize = true;
-      this.ischeckedCheckBox.Location = new System.Drawing.Point(108, 154);
-      this.ischeckedCheckBox.Name = "ischeckedCheckBox";
-      this.ischeckedCheckBox.Size = new System.Drawing.Size(18, 17);
-      this.ischeckedCheckBox.TabIndex = 26;
-      this.ischeckedCheckBox.UseVisualStyleBackColor = true;
-      this.ischeckedCheckBox.CheckedChanged += new System.EventHandler(this.ischeckedCheckBox_CheckedChanged);
-      // 
-      // expressionInput
-      // 
-      this.expressionInput.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-      this.expressionInput.Location = new System.Drawing.Point(108, 19);
-      this.expressionInput.Name = "expressionInput";
-      this.expressionInput.Size = new System.Drawing.Size(473, 22);
-      this.expressionInput.TabIndex = 25;
-      // 
-      // expressionLabel
-      // 
-      this.expressionLabel.AutoSize = true;
-      this.expressionLabel.Location = new System.Drawing.Point(8, 22);
-      this.expressionLabel.Name = "expressionLabel";
-      this.expressionLabel.Size = new System.Drawing.Size(81, 17);
-      this.expressionLabel.TabIndex = 24;
-      this.expressionLabel.Text = "Expression:";
-      // 
-      // errorProvider
-      // 
-      this.errorProvider.ContainerControl = this;
-      this.errorProvider.RightToLeft = true;
-      // 
-      // IntervalConstraintView
-      // 
-      this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
-      this.Controls.Add(this.groupBox1);
-      this.Name = "IntervalConstraintView";
-      this.Size = new System.Drawing.Size(587, 380);
-      this.groupBox1.ResumeLayout(false);
-      this.groupBox1.PerformLayout();
-      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).EndInit();
-      this.ResumeLayout(false);
-
-    }
-
-    #endregion
-    private System.Windows.Forms.Label lowerboundLabel;
-    private System.Windows.Forms.Label upperboundLabel;
-    private System.Windows.Forms.Label variableLabel;
-    private System.Windows.Forms.Label numberderivationLabel;
-    private System.Windows.Forms.TextBox upperboundInput;
-    private System.Windows.Forms.TextBox lowerboundInput;
-    private System.Windows.Forms.TextBox variableInput;
-    private System.Windows.Forms.GroupBox groupBox1;
-    private System.Windows.Forms.TextBox expressionInput;
-    private System.Windows.Forms.Label expressionLabel;
-    private System.Windows.Forms.ErrorProvider errorProvider;
-    private System.Windows.Forms.CheckBox ischeckedCheckBox;
-    private System.Windows.Forms.ComboBox numberderivationInput;
-    private System.Windows.Forms.Label label1;
-    private System.Windows.Forms.Label enabledLabel;
-  }
-}
Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Views/3.4/IntervalConstraintView.cs
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Views/3.4/IntervalConstraintView.cs	(revision 17546)
+++ 	(revision )
@@ -1,201 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2019 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 System.ComponentModel;
-using System.Windows.Forms;
-using HeuristicLab.Core.Views;
-using HeuristicLab.MainForm;
-
-namespace HeuristicLab.Problems.DataAnalysis.Views {
-  [View("Interval Constraint Detail View")]
-  [Content(typeof(IntervalConstraint), true)]
-  public sealed partial class IntervalConstraintView : ItemView {
-
-    public new IntervalConstraint Content {
-      get => (IntervalConstraint) base.Content;
-      set => base.Content = value;
-    }
-
-    public IntervalConstraintView() {
-      InitializeComponent();
-      int [] items = {1, 2, 3};
-      expressionInput.ReadOnly = true;
-      numberderivationInput.DataSource = items;
-    }
-
-    protected override void OnContentChanged() {
-      base.OnContentChanged();
-      UpdateControls();
-    }
-
-    protected override void RegisterContentEvents() {
-      base.RegisterContentEvents();
-      Content.Changed += new EventHandler(Content_Changed);
-    }
-
-    protected override void DeregisterContentEvents() {
-      Content.Changed -= new EventHandler(Content_Changed);
-      base.DeregisterContentEvents();
-    }
-
-    protected override void SetEnabledStateOfControls() {
-      base.SetEnabledStateOfControls();
-      expressionInput.Enabled = Content != null && !Locked && !ReadOnly;
-      variableInput.Enabled = Content != null && !Locked && !ReadOnly;
-      numberderivationInput.Enabled = Content != null && !Locked && !ReadOnly;
-      lowerboundInput.Enabled = Content != null && !Locked && !ReadOnly;
-      upperboundInput.Enabled = Content != null && !Locked && !ReadOnly;
-      ischeckedCheckBox.Enabled = Content != null && !Locked && !ReadOnly;
-    }
-
-
-
-    #region helpers
-
-    private static double ParseDoubleValue(string input, Control control, ErrorProvider errorProvider) {
-      input = input.ToLower();
-      switch (input) {
-        case "inf.":
-        case "+inf.":
-        case "Infinity":
-          return double.PositiveInfinity;
-        case "-inf.":
-        case "-Infinity":
-          return double.NegativeInfinity;
-        default: {
-          if (double.TryParse(input, out var value))
-            return value;
-          else {
-            errorProvider.SetError(control, "Invalid Input: Value must be a double!");
-            return double.NaN;
-          }
-        }
-      }
-    }
-
-    private void UpdateControls() {
-      if (Content == null) {
-        expressionInput.Text = string.Empty;
-        lowerboundInput.Text = string.Empty;
-        upperboundInput.Text = string.Empty;
-        return;
-      }
-
-      expressionInput.Text = Content.Expression;
-      lowerboundInput.Text = Content.Interval.LowerBound.ToString();
-      upperboundInput.Text = Content.Interval.UpperBound.ToString();
-
-      variableInput.Text = Content.Variable;
-      if (!Content.IsDerivative) {
-        numberderivationInput.Enabled = false;
-        numberderivationInput.SelectedItem = null;
-        numberderivationInput.Text = "0";
-      } else {
-        numberderivationLabel.Visible = true;
-        numberderivationInput.Visible = true;
-        numberderivationInput.Enabled = true;
-        numberderivationInput.SelectedItem = Content.NumberOfDerivations;
-      }
-
-      ischeckedCheckBox.Checked = Content.Enabled;
-    }
-
-    #endregion
-
-    #region control event handlers
-    private void lowerboundInput_Validating(object sender, CancelEventArgs e) {
-      var value = ParseDoubleValue(lowerboundInput.Text, lowerboundInput, this.errorProvider);
-      if (double.IsNaN(value)) {
-        errorProvider.SetError(lowerboundInput, "Invalid Input: Lowerbound must be a double value!");
-        e.Cancel = true;
-        return;
-      }
-
-      if (value > Content.Interval.UpperBound) {
-        errorProvider.SetError(lowerboundInput, "Invalid Input: Lowerbound must be smaller than Upperbound!");
-        e.Cancel = true;
-        return;
-      }
-
-      errorProvider.SetError(lowerboundInput, string.Empty);
-      e.Cancel = false;
-    }
-
-    private void lowerboundInput_Validated(object sender, EventArgs e) {
-      var value = ParseDoubleValue(lowerboundInput.Text, lowerboundInput, this.errorProvider);
-      if (!double.IsNaN(value)) {
-        Content.Interval = new Interval(value, Content.Interval.UpperBound);
-      }
-    }
-
-    private void upperboundInput_Validating(object sender, CancelEventArgs e) {
-      var value = ParseDoubleValue(upperboundInput.Text, upperboundInput, this.errorProvider);
-      if (double.IsNaN(value)) {
-        errorProvider.SetError(upperboundInput, "Invalid Input: Upperbound must be a double value!");
-        e.Cancel = true;
-        return;
-      }
-
-      if (value < Content.Interval.LowerBound) {
-        errorProvider.SetError(upperboundInput, "Invalid Input: Upperbound must be bigger than Lowerbound!");
-        e.Cancel = true;
-        return;
-      }
-
-      errorProvider.SetError(upperboundInput, string.Empty);
-      e.Cancel = false;
-    }
-
-    private void upperboundInput_Validated(object sender, EventArgs e) {
-      var value = ParseDoubleValue(upperboundInput.Text, upperboundInput, this.errorProvider);
-      if (!double.IsNaN(value)) {
-        Content.Interval = new Interval(Content.Interval.LowerBound, value);
-      }
-    }
-
-    private void ischeckedCheckBox_CheckedChanged(object sender, EventArgs e) {
-        Content.Enabled = ischeckedCheckBox.Checked;
-    }
-
-    private void numberderivationInput_SelectedIndexChanged(object sender, EventArgs e) {
-      if (numberderivationInput.SelectedItem == null) { 
-        Content.NumberOfDerivations = 0;
-        numberderivationInput.Enabled = false;
-        return;
-      }
-      if ((int)numberderivationInput.SelectedItem == 1)
-        Content.NumberOfDerivations = 1;
-      else if ((int)numberderivationInput.SelectedItem == 2)
-        Content.NumberOfDerivations = 2;
-      else if ((int)numberderivationInput.SelectedItem == 3)
-        Content.NumberOfDerivations = 3;
-    }
-
-    #endregion
-
-    #region content event handlers
-
-    private void Content_Changed(object sender, EventArgs e) {
-      UpdateControls();
-    }
-    #endregion
-  }
-}
Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/HeuristicLab.Problems.DataAnalysis-3.4.csproj
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/HeuristicLab.Problems.DataAnalysis-3.4.csproj	(revision 17546)
+++ branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/HeuristicLab.Problems.DataAnalysis-3.4.csproj	(revision 17547)
@@ -191,6 +191,4 @@
     <Compile Include="Implementation\Interval\Interval.cs" />
     <Compile Include="Implementation\Interval\IntervalCollection.cs" />
-    <Compile Include="Implementation\Interval\IntervalConstraint.cs" />
-    <Compile Include="Implementation\Interval\IntervalConstraintsParser.cs" />
     <Compile Include="Implementation\Regression\ConfidenceBoundRegressionSolution.cs" />
     <Compile Include="Implementation\Regression\ConstantRegressionModel.cs" />
@@ -297,5 +295,4 @@
     <Compile Include="OnlineCalculators\OnlineWeightedDirectionalSymmetryCalculator.cs" />
     <Compile Include="OnlineCalculators\OnlineWeightedClassificationMeanSquaredErrorCalculator.cs" />
-    <Compile Include="ProblemDataConstraint.cs" />
     <Compile Include="Plugin.cs" />
     <Compile Include="Implementation\Classification\ThresholdCalculators\AccuracyMaximizationThresholdCalculator.cs" />
Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/Interval.cs
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/Interval.cs	(revision 17546)
+++ branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/Interval.cs	(revision 17547)
@@ -263,4 +263,5 @@
 
       return new Interval(Math.Pow(a.LowerBound, 1.0 / higher), Math.Pow(a.UpperBound, 1.0 / lower));
+      
     }
 
@@ -285,5 +286,5 @@
       if (a.Contains(0.0)) {
         min = 0.0;
-    }
+      }
 
       return new Interval(min, max);
Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/IntervalConstraint.cs
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/IntervalConstraint.cs	(revision 17546)
+++ 	(revision )
@@ -1,192 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2019 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 HEAL.Attic;
-using HeuristicLab.Common;
-using HeuristicLab.Core;
-
-namespace HeuristicLab.Problems.DataAnalysis {
-  [StorableType("8109BE58-CCFB-4462-A2F4-EEE5DFADAFF7")]
-  [Item("Interval Constraint", "Constraint on intervals.")]
-  public sealed class IntervalConstraint : Item {
-    [Storable]
-    private string expression;
-    public string Expression {
-      get => expression;
-      private set {
-        if (expression == value) return;
-        expression = value;
-        OnChanged();
-        OnToStringChanged();
-      }
-    }
-
-    public string Definition {
-      get { return GetDefinitionString(); }
-    }
-
-    [Storable]
-    private string variable;
-    public string Variable {
-      get => variable;
-      private set {
-        if (variable == value) return;
-        variable = value;
-        UpdateExpression();
-        OnChanged();
-      }
-    }
-
-    [Storable]
-    private string target;
-    public string Target {
-      get => target;
-      private set {
-        if (target == value) return;
-        target = value;
-        UpdateExpression();
-        OnChanged();
-      }
-    }
-
-    public bool IsDerivative {
-      get => NumberOfDerivations > 0;
-    }
-
-    [Storable]
-    private int numberOfDerivations;
-    public int NumberOfDerivations {
-      get => numberOfDerivations;
-      set {
-        if (value < 0 || value > 3) throw new ArgumentException("Number of derivation has to be between 0 - 3.");
-        if (numberOfDerivations == value) return;
-        numberOfDerivations = value;
-        UpdateExpression();
-        OnChanged();
-      }
-    }
-
-    [Storable]
-    private Interval interval;
-    public Interval Interval {
-      get => interval;
-      set {
-        if (interval == value) return;
-        interval = value;
-        UpdateExpression();
-        OnChanged();
-      }
-    }
-
-    [Storable]
-    private bool enabled;
-    public bool Enabled {
-      get => enabled;
-      set {
-        if (enabled == value) return;
-        enabled = value;
-        OnChanged();
-      }
-    }
-
-    [StorableConstructor]
-    private IntervalConstraint(StorableConstructorFlag _) : base(_) { }
-
-    public IntervalConstraint(string expression, string variable, string target, int numberOfDerivations, Interval interval, bool enabled) : base(){
-      this.expression = expression;
-      this.variable = variable;
-      this.target = target;
-      this.numberOfDerivations = numberOfDerivations;
-      this.interval = interval;
-      this.enabled = enabled;
-    }
-
-    public override IDeepCloneable Clone(Cloner cloner) {
-      return new IntervalConstraint(this, cloner);
-    }
-
-    private IntervalConstraint(IntervalConstraint original, Cloner cloner)
-      : base(original, cloner) {
-      this.Expression = original.Expression;
-      this.Variable = original.Variable;
-      this.Target = original.Target;
-      this.NumberOfDerivations = original.NumberOfDerivations;
-      this.Interval = original.Interval;
-      this.Enabled = original.Enabled;
-    }
-
-    public event EventHandler Changed;
-    private void OnChanged() {
-      EventHandler handlers = Changed;
-      if (handlers != null)
-        handlers(this, EventArgs.Empty);
-    }
-
-    private static string GetDerivationString(int derivation) {
-      switch (derivation) {
-        case 1:
-          return "";
-        case 2:
-          return "²";
-        case 3:
-          return "³";
-        default:
-          return "";
-      }
-    }
-
-    private void UpdateExpression() {
-      var expression = "";
-
-      if (!IsDerivative) {
-        expression = string.Format("Target:{0} in {1}{2} .. {3}{4}",
-          Variable,
-          "[",
-          Interval?.LowerBound,
-          Interval?.UpperBound,
-          "]");
-        Expression = expression;
-        return;
-      } 
-      expression = string.Format("∂{6}{1}/∂{0}{6} in {2}{3} .. {4}{5}",
-        Variable,
-        Target,
-        "[",
-        Interval?.LowerBound,
-        Interval?.UpperBound,
-        "]",
-        GetDerivationString(numberOfDerivations));
-        Expression = expression;
-    }
-
-    private string GetDefinitionString() {
-      if (!IsDerivative) {
-        return "Target " + Variable;
-      }
-      var definition = $"∂{GetDerivationString(numberOfDerivations)}Target/∂{Variable}{GetDerivationString(numberOfDerivations)}";
-      return definition;
-    }
-
-    public override string ToString() {
-      return Expression;
-    }
-  }
-}
Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/IntervalConstraintsParser.cs
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/IntervalConstraintsParser.cs	(revision 17546)
+++ 	(revision )
@@ -1,168 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2019 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 System.Collections.Generic;
-using System.Globalization;
-using System.Linq;
-using System.Text.RegularExpressions;
-
-namespace HeuristicLab.Problems.DataAnalysis {
-  public static class IntervalConstraintsParser {
-
-    public static IEnumerable<IntervalConstraint> ParseInput(string inputText, string target, IEnumerable<string> variables) {
-
-      if (string.IsNullOrEmpty(inputText)) throw new ArgumentNullException("No input text has been provided.");
-      if (string.IsNullOrEmpty(target)) throw new ArgumentNullException("No target variable has been provided.");
-      if (variables == null) throw new ArgumentNullException("No variables have been provided.");
-      if (!variables.Any()) throw new ArgumentException("Variables are empty.");
-
-      var lines = inputText.Split(new[] { "\r\n", "\r", "\n" }, StringSplitOptions.None);
-      foreach (var line in lines) {
-        var trimmedLine = line.TrimStart();
-        //Check for target-variable constraint
-        if (trimmedLine.StartsWith("Target:")) {
-          var start = "Target:".Length;
-          var end = trimmedLine.Length;
-          var targetConstraint = trimmedLine.Substring(start, end - start);
-          var match = Regex.Match(targetConstraint,
-            @"(['](.*)[']|(.*[^\s]))\s*(\bin\b)\s*([\[])\s*(\S*)\s*(\.{2})\s*(\S*)\s*([\]])");
-          if (match.Success) {
-            if (match.Groups.Count != 10) {
-              throw new ArgumentException("The target-constraint is not complete.", line);
-            } else {
-              var targetVariable = match.Groups[1].Value.Trim();
-              if (match.Groups[1].Value.Trim().StartsWith("'") && match.Groups[1].Value.Trim().EndsWith("'")) {
-                targetVariable = targetVariable.Substring(1, targetVariable.Length - 2);
-              }
-
-              if (targetVariable != target) {
-                throw new ArgumentException($"The target variable {targetVariable}  does not match the provided target {target}.", line);
-              }
-
-              var lowerBound = ParseIntervalBounds(match.Groups[6].Value);
-              var upperBound = ParseIntervalBounds(match.Groups[8].Value);
-              var expression = "Target:" + match.Groups[0].Value;
-              var parsedTarget = match.Groups[1].Value.Trim();
-              var variable = targetVariable;
-              var isEnabled = true;
-              var numberOfDerivation = 0;
-              var interval = new Interval(lowerBound, upperBound);
-
-              var constraint = new IntervalConstraint(expression, variable, parsedTarget, numberOfDerivation, interval, isEnabled);
-
-              yield return constraint;
-            }
-          } else {
-            throw new ArgumentException("The inserted target constraint is not valid.", line);
-          }
-          //Check for derivation
-        } else if (trimmedLine.StartsWith("d") || trimmedLine.StartsWith("\u2202")) {
-          var match = Regex.Match(trimmedLine,
-            @"([d∂])([²³]?)\s*(['](.*)[']|(.*[^\s]))\s*(\/)\s*([d∂])\s*(['](.*)[']|(.*[^\s²³]))\s*([²³]?)\s*\bin\b\s*([\[])\s*(\S*)\s*(\.{2})\s*(\S*)\s*([\]])");
-
-          if (match.Success) {
-            if (match.Groups.Count != 17) {
-              throw new ArgumentException("The given derivation-constraint is not complete.", line);
-            } else {
-              var derivationTarget = match.Groups[3].Value.Trim();
-              var derivationVariable = match.Groups[8].Value.Trim();
-
-              if (match.Groups[3].Value.Trim().StartsWith("'") && match.Groups[3].Value.Trim().EndsWith("'")) {
-                derivationTarget = derivationTarget.Substring(1, derivationTarget.Length - 2);
-              }
-              if (match.Groups[8].Value.Trim().StartsWith("'") && match.Groups[8].Value.Trim().EndsWith("'")) {
-                derivationVariable = derivationVariable.Substring(1, derivationVariable.Length - 2);
-              }
-
-              if (derivationTarget != target) {
-                throw new ArgumentException($"The target variable {derivationTarget}  does not match the provided target {target}.", line);
-              }
-
-              if (variables.All(v => v != derivationVariable)) {
-                throw new ArgumentException($"The given variable {derivationVariable} does not exist in the dataset.", line);
-              }
-
-              if (match.Groups[2].Value.Trim() != "" || match.Groups[11].Value.Trim() != "") {
-                if (match.Groups[2].Value.Trim() == "" || match.Groups[11].Value.Trim() == "")
-                  throw new ArgumentException("Number of derivation has to be written on both sides.", line);
-                if (match.Groups[2].Value.Trim() != match.Groups[11].Value.Trim())
-                  throw new ArgumentException("Derivation number is not equal on both sides.", line);
-              }
-
-              var lowerBound = ParseIntervalBounds(match.Groups[13].Value);
-              var upperBound = ParseIntervalBounds(match.Groups[15].Value);
-              var expression = match.Groups[0].Value;
-              var parsedTarget = derivationTarget;
-              var isEnabled = true;
-              var variable = derivationVariable;
-              var numberOfDerivation = ParseDerivationCount(match.Groups[2].Value.Trim());
-              var interval = new Interval(lowerBound, upperBound);
-
-              var constraint = new IntervalConstraint(expression, variable, parsedTarget, numberOfDerivation, interval, isEnabled);
-
-              yield return constraint;
-            }
-          } else {
-            throw new ArgumentException("The inserted derivation constraint is not valid.", line);
-          }
-          //Check for comment
-        } else if (trimmedLine.StartsWith("#") || trimmedLine == "") {
-          //If it is a comment just continue without saving anything
-          continue;
-        } else {
-          throw new ArgumentException("Error at your constraints definition constraints have to start with (Target: | d | \u2202 | #)", line);
-        }
-      }
-    }
-
-    private static double ParseIntervalBounds(string input) {
-      input = input.ToLower();
-      switch (input) {
-        case "+inf.":
-        case "inf.":
-          return double.PositiveInfinity;
-        case "-inf.":
-          return double.NegativeInfinity;
-        default: {
-            if (double.TryParse(input, NumberStyles.Any, CultureInfo.InvariantCulture, out var value)) {
-              return value;
-            } else {
-              throw new ArgumentException("The given boundary is not a double value!");
-            }
-          }
-      }
-    }
-
-    private static int ParseDerivationCount(string input) {
-      switch (input) {
-        case "":
-          return 1;
-        case "²":
-          return 2;
-        case "³":
-          return 3;
-        default:
-          int.TryParse(input, out var value);
-          return value;
-      }
-    }
-  }
-}
Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs	(revision 17546)
+++ branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs	(revision 17547)
@@ -94,5 +94,4 @@
       problemData.Parameters.Add(new ConstrainedValueParameter<StringValue>(TargetVariableParameterName, new ItemSet<StringValue>()));
       problemData.Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, "", new IntervalCollection()));
-      problemData.Parameters.Add(new FixedValueParameter<ProblemDataConstraint>(IntervalConstraintsParameterName, "", new ProblemDataConstraint(problemData)));
       emptyProblemData = problemData;
     }
@@ -107,11 +106,4 @@
     public IntervalCollection VariableRanges {
       get => VariableRangesParameter.Value;
-    }
-
-
-    public IFixedValueParameter<ProblemDataConstraint> IntervalConstraintsParameter => (IFixedValueParameter<ProblemDataConstraint>)Parameters[IntervalConstraintsParameterName];
-
-    public ProblemDataConstraint IntervalConstraints {
-      get => IntervalConstraintsParameter.Value;
     }
 
@@ -148,7 +140,4 @@
         Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, intervalCollection));
       }
-      if (!Parameters.ContainsKey(IntervalConstraintsParameterName)) { 
-        Parameters.Add(new FixedValueParameter<ProblemDataConstraint>(IntervalConstraintsParameterName, new ProblemDataConstraint(this)));
-      }
       RegisterParameterEvents();
     }
@@ -180,5 +169,4 @@
       var intervalCollection = CalculateDatasetIntervals(this.Dataset);
       Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, intervalCollection));
-      Parameters.Add(new FixedValueParameter<ProblemDataConstraint>(IntervalConstraintsParameterName, new ProblemDataConstraint(this)));
       RegisterParameterEvents();
     }
Index: branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/Regression/IRegressionProblemData.cs
===================================================================
--- branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/Regression/IRegressionProblemData.cs	(revision 17546)
+++ branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/Regression/IRegressionProblemData.cs	(revision 17547)
@@ -29,5 +29,4 @@
 
     IntervalCollection VariableRanges { get;}
-    ProblemDataConstraint IntervalConstraints { get; }
 
     IEnumerable<double> TargetVariableValues { get; }
