diff --git a/alib2algo/src/tree/generate/RandomTreeFactory.cpp b/alib2algo/src/tree/generate/RandomTreeFactory.cpp
index 8e35b430983f43c17a643273119385c1849e169b..4253133530efdf6a6b8e4f6cc6fa5fe7ca5d63ab 100644
--- a/alib2algo/src/tree/generate/RandomTreeFactory.cpp
+++ b/alib2algo/src/tree/generate/RandomTreeFactory.cpp
@@ -169,7 +169,7 @@ struct Node {
 			if ( singleNonlinearVariable )
 				return ext::tree < common::ranked_symbol < > > ( common::ranked_symbol < > ( DefaultSymbolType ( alphabet::NonlinearVariableSymbol < > ( DefaultSymbolType ( "A" ) ) ), DefaultRankType ( 0 ) ), { } );
 			else
-				return ext::tree < common::ranked_symbol < > > ( common::ranked_symbol < > ( DefaultSymbolType ( alphabet::NonlinearVariableSymbol < > ( symbol ) ), DefaultRankType ( 0 ) ), { } );
+				return ext::tree < common::ranked_symbol < > > ( common::ranked_symbol < > ( DefaultSymbolType ( alphabet::NonlinearVariableSymbol < > ( DefaultSymbolType ( symbol ) ) ), DefaultRankType ( 0 ) ), { } );
 		} else {
 			ext::vector < ext::tree < common::ranked_symbol < > > > children;
 			Node * nextChild = child;
@@ -386,7 +386,7 @@ RankedNonlinearPattern < > RandomRankedNonlinearPatternFactory::generateRankedNo
 		nonlinearVariables.insert ( common::ranked_symbol < > ( DefaultSymbolType ( alphabet::NonlinearVariableSymbol < > ( DefaultSymbolType ( "A" ) ) ), DefaultRankType ( 0 ) ) );
 	else
 		for ( char i : rankedAlphabet [ 0 ] )
-			nonlinearVariables.insert ( common::ranked_symbol < > ( DefaultSymbolType ( alphabet::NonlinearVariableSymbol < > ( i ) ), DefaultRankType ( 0 ) ) );
+			nonlinearVariables.insert ( common::ranked_symbol < > ( DefaultSymbolType ( alphabet::NonlinearVariableSymbol < > ( DefaultSymbolType ( i ) ) ), DefaultRankType ( 0 ) ) );
 
 	common::ranked_symbol < > subtreeWildcard = alphabet::SubtreeWildcardSymbol::instance < common::ranked_symbol < > > ( );
 	treeRankedAlphabet.insert ( subtreeWildcard );
diff --git a/alib2data/src/alphabet/NonlinearVariableSymbol.h b/alib2data/src/alphabet/NonlinearVariableSymbol.h
index a763a36a71b888d7b41ec0910bd7f558cef9b511..4f52ffb5c2a8f9037881cd3bd97eaee3d4065e17 100644
--- a/alib2data/src/alphabet/NonlinearVariableSymbol.h
+++ b/alib2data/src/alphabet/NonlinearVariableSymbol.h
@@ -26,17 +26,8 @@ class NonlinearVariableSymbol : public SymbolBase {
 	SymbolType m_symbol;
 
 public:
-	explicit NonlinearVariableSymbol ( int number );
-	explicit NonlinearVariableSymbol ( char character );
-	explicit NonlinearVariableSymbol ( std::string symbol );
 	explicit NonlinearVariableSymbol ( SymbolType symbol );
 
-	/**
-	 * Creates a subtreeWildcard symbol.
-	 * @param symbol name of the symbol
-	 */
-	explicit NonlinearVariableSymbol ( );
-
 	virtual SymbolBase * clone ( ) const;
 	virtual SymbolBase * plunder ( ) &&;
 
@@ -67,18 +58,6 @@ public:
 	typedef NonlinearVariableSymbol < > normalized_type;
 };
 
-template < class SymbolType >
-NonlinearVariableSymbol < SymbolType >::NonlinearVariableSymbol ( int number ) : m_symbol ( DefaultSymbolType ( number ) ) {
-}
-
-template < class SymbolType >
-NonlinearVariableSymbol < SymbolType >::NonlinearVariableSymbol ( char character ) : m_symbol ( DefaultSymbolType ( character ) ) {
-}
-
-template < class SymbolType >
-NonlinearVariableSymbol < SymbolType >::NonlinearVariableSymbol ( std::string symbol ) : m_symbol ( DefaultSymbolType ( std::move ( symbol ) ) ) {
-}
-
 template < class SymbolType >
 NonlinearVariableSymbol < SymbolType >::NonlinearVariableSymbol ( SymbolType symbol ) : m_symbol ( std::move ( symbol ) ) {
 }