diff --git a/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp
index 50c5dc0b45c86520536f7efc0a7b9a7f0e28af80..6a5bb110ba7473e0605a2f93f650cee62f92b3b4 100644
--- a/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp
+++ b/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp
@@ -147,7 +147,7 @@ bool PrefixRankedBarPattern::isEmpty ( ) const {
 }
 
 int PrefixRankedBarPattern::compare ( const PrefixRankedBarPattern & other ) const {
-	auto first	= std::tie ( m_Data, alphabet );
+	auto first = std::tie ( m_Data, alphabet );
 	auto second = std::tie ( other.m_Data, other.alphabet );
 
 	std::compare < decltype ( first ) > comp;
@@ -156,32 +156,22 @@ int PrefixRankedBarPattern::compare ( const PrefixRankedBarPattern & other ) con
 }
 
 void PrefixRankedBarPattern::operator >>( std::ostream & out ) const {
-	if ( this->isEmpty ( ) ) {
-		out << "(Epsilon)";
-	} else {
-		out << "(PrefixRankedBarPattern ";
+	out << "(PrefixRankedBarPattern ";
 
-		for ( const alphabet::RankedSymbol & symbol : this->m_Data )
-			out << symbol;
+	for ( const alphabet::RankedSymbol & symbol : this->m_Data )
+		out << symbol;
 
-		out << ")";
-	}
+	out << ")";
 }
 
 PrefixRankedBarPattern::operator std::string ( ) const {
 	std::stringstream ss;
+	ss << "\"";
 
-	if ( this->isEmpty ( ) ) {
-		ss << "E";
-	} else {
-		ss << "\"";
-
-		for ( const alphabet::RankedSymbol & symbol : this->m_Data )
-			ss << ( std::string ) symbol;
-
-		ss << "\"";
-	}
+	for ( const alphabet::RankedSymbol & symbol : this->m_Data )
+		ss << ( std::string ) symbol;
 
+	ss << "\"";
 	return std::move ( ss ).str ( );
 }
 
diff --git a/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp b/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp
index a522b8acc3eac2fb29359d16152dec8a052de0bb..faa6b5e59941e6dade6063d92effea8ae44b9f7a 100644
--- a/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp
+++ b/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp
@@ -123,8 +123,8 @@ bool PrefixRankedBarTree::isEmpty ( ) const {
 }
 
 int PrefixRankedBarTree::compare ( const PrefixRankedBarTree & other ) const {
-	auto first	= std::tie ( m_Data, alphabet );
-	auto second = std::tie ( other.m_Data, other.alphabet );
+	auto first = std::tie ( m_Data, getAlphabet() );
+	auto second = std::tie ( other.m_Data, other.getAlphabet() );
 
 	std::compare < decltype ( first ) > comp;
 
@@ -132,32 +132,22 @@ int PrefixRankedBarTree::compare ( const PrefixRankedBarTree & other ) const {
 }
 
 void PrefixRankedBarTree::operator >>( std::ostream & out ) const {
-	if ( this->isEmpty ( ) ) {
-		out << "(Epsilon)";
-	} else {
-		out << "(PrefixRankedBarTree ";
+	out << "(PrefixRankedBarTree ";
 
-		for ( const alphabet::RankedSymbol & symbol : this->m_Data )
-			out << symbol;
+	for ( const alphabet::RankedSymbol & symbol : this->m_Data )
+		out << symbol;
 
-		out << ")";
-	}
+	out << ")";
 }
 
 PrefixRankedBarTree::operator std::string ( ) const {
 	std::stringstream ss;
+	ss << "\"";
 
-	if ( this->isEmpty ( ) ) {
-		ss << "E";
-	} else {
-		ss << "\"";
-
-		for ( const alphabet::RankedSymbol & symbol : this->m_Data )
-			ss << ( std::string ) symbol;
-
-		ss << "\"";
-	}
+	for ( const alphabet::RankedSymbol & symbol : this->m_Data )
+		ss << ( std::string ) symbol;
 
+	ss << "\"";
 	return std::move ( ss ).str ( );
 }
 
diff --git a/alib2data/src/tree/ranked/PrefixRankedPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedPattern.cpp
index 584f6ccdc4011136380708504db34b4819781a8d..63ac7e1b5e0078f489f6d09021ae9757052c92e2 100644
--- a/alib2data/src/tree/ranked/PrefixRankedPattern.cpp
+++ b/alib2data/src/tree/ranked/PrefixRankedPattern.cpp
@@ -112,7 +112,7 @@ bool PrefixRankedPattern::isEmpty ( ) const {
 }
 
 int PrefixRankedPattern::compare ( const PrefixRankedPattern & other ) const {
-	auto first	= std::tie ( m_Data, alphabet );
+	auto first = std::tie ( m_Data, alphabet );
 	auto second = std::tie ( other.m_Data, other.alphabet );
 
 	std::compare < decltype ( first ) > comp;
@@ -121,32 +121,22 @@ int PrefixRankedPattern::compare ( const PrefixRankedPattern & other ) const {
 }
 
 void PrefixRankedPattern::operator >>( std::ostream & out ) const {
-	if ( this->isEmpty ( ) ) {
-		out << "(Epsilon)";
-	} else {
-		out << "(PrefixRankedPattern ";
+	out << "(PrefixRankedPattern ";
 
-		for ( const alphabet::RankedSymbol & symbol : this->m_Data )
-			out << symbol;
+	for ( const alphabet::RankedSymbol & symbol : this->m_Data )
+		out << symbol;
 
-		out << ")";
-	}
+	out << ")";
 }
 
 PrefixRankedPattern::operator std::string ( ) const {
 	std::stringstream ss;
+	ss << "\"";
 
-	if ( this->isEmpty ( ) ) {
-		ss << "E";
-	} else {
-		ss << "\"";
-
-		for ( const alphabet::RankedSymbol & symbol : this->m_Data )
-			ss << ( std::string ) symbol;
-
-		ss << "\"";
-	}
+	for ( const alphabet::RankedSymbol & symbol : this->m_Data )
+		ss << ( std::string ) symbol;
 
+	ss << "\"";
 	return std::move ( ss ).str ( );
 }
 
diff --git a/alib2data/src/tree/ranked/PrefixRankedTree.cpp b/alib2data/src/tree/ranked/PrefixRankedTree.cpp
index 409aa6b81fcac5e927587f9e83c724e825ffc851..3f7dd58365e3f968552c32d80adffb7ed3f6541b 100644
--- a/alib2data/src/tree/ranked/PrefixRankedTree.cpp
+++ b/alib2data/src/tree/ranked/PrefixRankedTree.cpp
@@ -99,7 +99,7 @@ bool PrefixRankedTree::isEmpty ( ) const {
 }
 
 int PrefixRankedTree::compare ( const PrefixRankedTree & other ) const {
-	auto first	= std::tie ( m_Data, alphabet );
+	auto first = std::tie ( m_Data, alphabet );
 	auto second = std::tie ( other.m_Data, other.alphabet );
 
 	std::compare < decltype ( first ) > comp;
@@ -108,32 +108,22 @@ int PrefixRankedTree::compare ( const PrefixRankedTree & other ) const {
 }
 
 void PrefixRankedTree::operator >>( std::ostream & out ) const {
-	if ( this->isEmpty ( ) ) {
-		out << "(Epsilon)";
-	} else {
-		out << "(PrefixRankedTree ";
+	out << "(PrefixRankedTree ";
 
-		for ( const alphabet::RankedSymbol & symbol : this->m_Data )
-			out << symbol;
+	for ( const alphabet::RankedSymbol & symbol : this->m_Data )
+		out << symbol;
 
-		out << ")";
-	}
+	out << ")";
 }
 
 PrefixRankedTree::operator std::string ( ) const {
 	std::stringstream ss;
+	ss << "\"";
 
-	if ( this->isEmpty ( ) ) {
-		ss << "E";
-	} else {
-		ss << "\"";
-
-		for ( const alphabet::RankedSymbol & symbol : this->m_Data )
-			ss << ( std::string ) symbol;
-
-		ss << "\"";
-	}
+	for ( const alphabet::RankedSymbol & symbol : this->m_Data )
+		ss << ( std::string ) symbol;
 
+	ss << "\"";
 	return std::move ( ss ).str ( );
 }
 
diff --git a/alib2data/src/tree/unranked/PrefixBarTree.cpp b/alib2data/src/tree/unranked/PrefixBarTree.cpp
index 38b6511445adf65b67e9ca460b9b07bc39772e1b..255057d28b68d90de935868e5bb058404e6b9224 100644
--- a/alib2data/src/tree/unranked/PrefixBarTree.cpp
+++ b/alib2data/src/tree/unranked/PrefixBarTree.cpp
@@ -107,32 +107,22 @@ int PrefixBarTree::compare ( const PrefixBarTree & other ) const {
 }
 
 void PrefixBarTree::operator >>( std::ostream & out ) const {
-	if ( this->isEmpty ( ) ) {
-		out << "(Epsilon)";
-	} else {
-		out << "(PrefixBarTree ";
+	out << "(PrefixBarTree ";
 
-		for ( const alphabet::Symbol & symbol : this->m_Data )
-			out << symbol;
+	for ( const alphabet::Symbol & symbol : this->m_Data )
+		out << symbol;
 
-		out << ")";
-	}
+	out << ")";
 }
 
 PrefixBarTree::operator std::string ( ) const {
 	std::stringstream ss;
+	ss << "\"";
 
-	if ( this->isEmpty ( ) ) {
-		ss << "E";
-	} else {
-		ss << "\"";
-
-		for ( const alphabet::Symbol & symbol : this->m_Data )
-			ss << ( std::string ) symbol;
-
-		ss << "\"";
-	}
+	for ( const alphabet::Symbol & symbol : this->m_Data )
+		ss << ( std::string ) symbol;
 
+	ss << "\"";
 	return std::move ( ss ).str ( );
 }