diff --git a/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h b/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h
index fbc3475f6a592a9017ec038a3213c41553bf87b8..d7ad75dfc6deafc44ae16b138945119e82edd955 100644
--- a/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h
+++ b/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h
@@ -284,6 +284,10 @@ void PrefixRankedBarNonlinearPattern < SymbolType, RankType >::arityChecksum ( c
 		if ( ( data[i - 1] == getSubtreeWildcard ( ) ) && ( data[i] != getVariablesBar ( ) ) )
 			throw TreeException ( "Inconsystency of SubtreeWildcard and variablesBar" );
 
+	for ( unsigned i = 1; i < data.size ( ); ++i )
+		if ( ( getNonlinearVariables ( ).count ( data[i - 1] ) ) && ( data[i] != getVariablesBar ( ) ) )
+			throw TreeException ( "Inconsystency of NonlinearVariables and variablesBar" );
+
 }
 
 template < class SymbolType, class RankType >