From 8e2887738d3328ae0261107edb93cac4bb3e2b73 Mon Sep 17 00:00:00 2001
From: Jan Travnicek <Jan.Travnicek@fit.cvut.cz>
Date: Fri, 22 Sep 2017 21:11:06 +0200
Subject: [PATCH] optimize includes

---
 alib2algo/src/arbology/exact/BoyerMooreHorspool.h     |  3 ++-
 .../DeadZoneUsingBadCharacterShiftAndBorderArray.h    |  7 +++----
 .../exact/ExactNonlinearTreePatternAutomaton.h        | 11 ++++-------
 alib2algo/src/arbology/exact/ExactSubtreeMatch.h      |  3 +--
 .../src/arbology/exact/ExactTreePatternAutomaton.h    |  2 --
 .../src/arbology/exact/ReversedBoyerMooreHorspool.h   |  2 +-
 .../automaton/convert/ToPostfixPushdownAutomaton.cpp  |  4 ++--
 alib2algo/src/automaton/convert/ToRegExpAlgebraic.cpp |  2 +-
 alib2algo/src/automaton/convert/ToRegExpAlgebraic.h   |  4 ----
 alib2algo/src/automaton/determinize/Determinize.cpp   |  6 +++---
 .../src/automaton/determinize/DeterminizeNFAPart.hxx  |  3 +--
 .../src/automaton/determinize/common/RHDPDACommon.cpp |  4 ----
 .../src/automaton/properties/AllEpsilonClosure.h      |  2 +-
 alib2algo/src/automaton/properties/EpsilonClosure.h   |  2 +-
 .../src/automaton/simplify/EpsilonRemoverIncoming.h   |  2 +-
 .../src/automaton/simplify/EpsilonRemoverOutgoing.h   |  2 +-
 alib2algo/src/automaton/simplify/MinimizeBrzozowski.h |  4 ++--
 alib2algo/src/automaton/simplify/Rename.cpp           |  2 --
 alib2algo/src/automaton/simplify/Rename.h             |  1 -
 .../src/automaton/simplify/UnreachableStatesRemover.h |  2 +-
 .../src/automaton/simplify/UselessStatesRemover.h     |  2 +-
 alib2algo/src/automaton/transform/Compaction.h        |  2 +-
 alib2algo/src/automaton/transform/PDAToRHPDA.cpp      |  2 --
 alib2algo/src/automaton/transform/PDAToRHPDA.h        |  4 ----
 alib2algo/src/automaton/transform/RHPDAToPDA.cpp      |  1 -
 alib2algo/src/automaton/transform/RHPDAToPDA.h        |  4 ----
 alib2algo/src/automaton/transform/Reverse.h           |  3 ---
 alib2algo/src/grammar/generate/RandomizeGrammar.h     |  1 -
 alib2algo/src/grammar/simplify/EpsilonRemover.h       |  2 +-
 alib2algo/src/grammar/simplify/Rename.cpp             |  4 ----
 alib2algo/src/grammar/simplify/ToCNF.h                |  3 ---
 .../src/regexp/convert/ToAutomatonDerivation.cpp      |  9 ++++-----
 alib2algo/src/regexp/convert/ToAutomatonGlushkov.cpp  |  2 +-
 alib2algo/src/regexp/convert/ToAutomatonGlushkov.h    |  2 --
 alib2algo/src/regexp/convert/ToAutomatonThompson.cpp  |  5 ++---
 .../src/regexp/convert/ToGrammarRightRGDerivation.cpp |  9 ++++-----
 .../src/regexp/convert/ToGrammarRightRGGlushkov.cpp   |  4 +++-
 alib2algo/src/regexp/glushkov/GlushkovIndexate.h      |  2 --
 alib2algo/src/regexp/simplify/RegExpOptimize.h        |  1 -
 .../rte/convert/ToPostfixPushdownAutomatonGlushkov.h  |  5 +----
 .../convert/ToPostfixPushdownAutomatonGlushkovNaive.h |  2 --
 alib2algo/src/rte/glushkov/GlushkovFirst.h            |  3 +--
 alib2algo/src/rte/glushkov/GlushkovFollow.h           |  5 +----
 alib2algo/src/rte/glushkov/GlushkovFollowNaive.h      |  5 +----
 alib2algo/src/rte/glushkov/GlushkovIndexate.h         |  4 ++--
 alib2algo/src/rte/glushkov/GlushkovPos.h              |  4 ++--
 alib2algo/src/rte/glushkov/GlushkovSubstitutionMap.h  |  5 +----
 alib2algo/src/string/naive/ExactCompare.h             |  6 +++---
 alib2algo/src/string/naive/ExactEqual.h               |  6 +++---
 alib2algo/src/stringology/exact/ExactFactorMatch.h    |  7 +++----
 .../ExactMultiNondeterministicSubsequenceAutomaton.h  |  6 ++----
 .../indexing/NondeterministicExactFactorAutomaton.cpp |  4 ----
 .../indexing/NondeterministicExactFactorAutomaton.h   |  1 -
 .../indexing/NondeterministicExactSuffixAutomaton.h   |  1 -
 alib2algo/src/stringology/properties/BackboneLength.h |  1 -
 alib2algo/src/stringology/query/BNDMOccurrences.cpp   |  2 --
 .../src/stringology/query/BackwardDAWGMatching.cpp    |  8 ++------
 .../src/stringology/query/BackwardOracleMatching.cpp  |  9 ++-------
 alib2algo/src/tree/generate/RandomTreeFactory.cpp     |  3 ++-
 alib2algo/src/tree/properties/ExactSubtreeRepeats.h   |  3 +--
 .../src/tree/properties/ExactSubtreeRepeatsNaive.h    |  3 +--
 61 files changed, 70 insertions(+), 153 deletions(-)

diff --git a/alib2algo/src/arbology/exact/BoyerMooreHorspool.h b/alib2algo/src/arbology/exact/BoyerMooreHorspool.h
index b8cd4e886a..cc60842db5 100644
--- a/alib2algo/src/arbology/exact/BoyerMooreHorspool.h
+++ b/alib2algo/src/arbology/exact/BoyerMooreHorspool.h
@@ -11,6 +11,8 @@
 #include <set>
 #include <map>
 
+#include <common/ranked_symbol.hpp>
+
 #include <tree/properties/BadCharacterShiftTable.h>
 #include <tree/properties/SubtreeJumpTable.h>
 #include <tree/properties/ExactSubtreeRepeatsNaive.h>
@@ -18,7 +20,6 @@
 #include <tree/ranked/PrefixRankedBarTree.h>
 #include <tree/ranked/PrefixRankedBarPattern.h>
 #include <tree/ranked/PrefixRankedBarNonlinearPattern.h>
-#include <alphabet/RankedSymbol.h>
 
 namespace arbology {
 
diff --git a/alib2algo/src/arbology/exact/DeadZoneUsingBadCharacterShiftAndBorderArray.h b/alib2algo/src/arbology/exact/DeadZoneUsingBadCharacterShiftAndBorderArray.h
index 1317cb8275..a68d12e2a0 100644
--- a/alib2algo/src/arbology/exact/DeadZoneUsingBadCharacterShiftAndBorderArray.h
+++ b/alib2algo/src/arbology/exact/DeadZoneUsingBadCharacterShiftAndBorderArray.h
@@ -10,7 +10,9 @@
 
 #include <set>
 #include <vector>
-#include <alphabet/RankedSymbol.h>
+#include <map>
+
+#include <common/ranked_symbol.hpp>
 
 #include <tree/properties/ReversedBadCharacterShiftTable.h>
 #include <tree/properties/BorderArrayNaive.h>
@@ -20,9 +22,6 @@
 #include <tree/ranked/PrefixRankedBarPattern.h>
 #include <tree/ranked/PrefixRankedTree.h>
 #include <tree/ranked/PrefixRankedPattern.h>
-#include <alphabet/RankedSymbol.h>
-
-#include <map>
 
 namespace arbology {
 
diff --git a/alib2algo/src/arbology/exact/ExactNonlinearTreePatternAutomaton.h b/alib2algo/src/arbology/exact/ExactNonlinearTreePatternAutomaton.h
index b7e4ee7215..d37d02cdd4 100644
--- a/alib2algo/src/arbology/exact/ExactNonlinearTreePatternAutomaton.h
+++ b/alib2algo/src/arbology/exact/ExactNonlinearTreePatternAutomaton.h
@@ -8,20 +8,17 @@
 #ifndef _EXACT_NONLINEAR_TREE_PATTERN_AUTOMATON_H__
 #define _EXACT_NONLINEAR_TREE_PATTERN_AUTOMATON_H__
 
-#include <primitive/Unsigned.h>
-#include <primitive/Character.h>
-#include <container/ObjectsPair.h>
+#include <pair>
+#include <deque>
+#include <vector>
 
-#include <alphabet/RankedSymbol.h>
+#include <common/ranked_symbol.hpp>
 
 #include <tree/ranked/PrefixRankedTree.h>
 #include <automaton/PDA/InputDrivenNPDA.h>
 
 #include <tree/properties/ExactSubtreeRepeatsNaive.h>
 
-#include <deque>
-#include <vector>
-
 namespace arbology {
 
 namespace exact {
diff --git a/alib2algo/src/arbology/exact/ExactSubtreeMatch.h b/alib2algo/src/arbology/exact/ExactSubtreeMatch.h
index 2a53a4889b..11e3978534 100644
--- a/alib2algo/src/arbology/exact/ExactSubtreeMatch.h
+++ b/alib2algo/src/arbology/exact/ExactSubtreeMatch.h
@@ -12,8 +12,7 @@
 #include <tree>
 #include <deque>
 #include <foreach>
-
-#include <alphabet/RankedSymbol.h>
+#include <common/ranked_symbol.hpp>
 
 #include <tree/ranked/RankedTree.h>
 #include <tree/ranked/PrefixRankedTree.h>
diff --git a/alib2algo/src/arbology/exact/ExactTreePatternAutomaton.h b/alib2algo/src/arbology/exact/ExactTreePatternAutomaton.h
index 63f3d6dc6e..97addd9d28 100644
--- a/alib2algo/src/arbology/exact/ExactTreePatternAutomaton.h
+++ b/alib2algo/src/arbology/exact/ExactTreePatternAutomaton.h
@@ -13,8 +13,6 @@
 #include <automaton/PDA/InputDrivenNPDA.h>
 
 #include <deque>
-#include <primitive/Character.h>
-#include <primitive/Unsigned.h>
 
 namespace arbology {
 
diff --git a/alib2algo/src/arbology/exact/ReversedBoyerMooreHorspool.h b/alib2algo/src/arbology/exact/ReversedBoyerMooreHorspool.h
index b0606c34d7..7542d3afa4 100644
--- a/alib2algo/src/arbology/exact/ReversedBoyerMooreHorspool.h
+++ b/alib2algo/src/arbology/exact/ReversedBoyerMooreHorspool.h
@@ -10,6 +10,7 @@
 
 #include <set>
 #include <map>
+#include <common/ranked_symbol.hpp>
 
 #include <tree/properties/ReversedBadCharacterShiftTable.h>
 #include <tree/properties/SubtreeJumpTable.h>
@@ -21,7 +22,6 @@
 #include <tree/ranked/PrefixRankedBarPattern.h>
 #include <tree/ranked/PrefixRankedNonlinearPattern.h>
 #include <tree/ranked/PrefixRankedBarNonlinearPattern.h>
-#include <alphabet/RankedSymbol.h>
 
 namespace arbology {
 
diff --git a/alib2algo/src/automaton/convert/ToPostfixPushdownAutomaton.cpp b/alib2algo/src/automaton/convert/ToPostfixPushdownAutomaton.cpp
index adee3fdb78..fae049fb02 100644
--- a/alib2algo/src/automaton/convert/ToPostfixPushdownAutomaton.cpp
+++ b/alib2algo/src/automaton/convert/ToPostfixPushdownAutomaton.cpp
@@ -9,8 +9,8 @@
 
 #include <exception/CommonException.h>
 
-#include "alphabet/BottomOfTheStackSymbol.h"
-#include "alphabet/EndSymbol.h"
+#include <alphabet/BottomOfTheStackSymbol.h>
+#include <alphabet/EndSymbol.h>
 #include <label/InitialStateLabel.h>
 #include <label/FinalStateLabel.h>
 
diff --git a/alib2algo/src/automaton/convert/ToRegExpAlgebraic.cpp b/alib2algo/src/automaton/convert/ToRegExpAlgebraic.cpp
index 63981fc7ff..96a33e2cf8 100644
--- a/alib2algo/src/automaton/convert/ToRegExpAlgebraic.cpp
+++ b/alib2algo/src/automaton/convert/ToRegExpAlgebraic.cpp
@@ -12,7 +12,7 @@
 #include <automaton/FSM/MultiInitialStateNFA.h>
 #include <automaton/FSM/EpsilonNFA.h>
 
-#include "../../equations/RightRegularEquationSolver.h"
+#include <equations/RightRegularEquationSolver.h>
 #include <regexp/unbounded/UnboundedRegExpElements.h>
 #include <registration/AlgoRegistration.hpp>
 
diff --git a/alib2algo/src/automaton/convert/ToRegExpAlgebraic.h b/alib2algo/src/automaton/convert/ToRegExpAlgebraic.h
index d96b39e7f4..bc91dcae1b 100644
--- a/alib2algo/src/automaton/convert/ToRegExpAlgebraic.h
+++ b/alib2algo/src/automaton/convert/ToRegExpAlgebraic.h
@@ -8,10 +8,6 @@
 #ifndef AUTOMATON_TO_REG_EXP_ALGEBRAIC_H_
 #define AUTOMATON_TO_REG_EXP_ALGEBRAIC_H_
 
-#include <deque>
-#include <map>
-#include <queue>
-
 #include <regexp/unbounded/UnboundedRegExp.h>
 #include <automaton/AutomatonFeatures.h>
 
diff --git a/alib2algo/src/automaton/determinize/Determinize.cpp b/alib2algo/src/automaton/determinize/Determinize.cpp
index 22cf405f66..3f3c769f7a 100644
--- a/alib2algo/src/automaton/determinize/Determinize.cpp
+++ b/alib2algo/src/automaton/determinize/Determinize.cpp
@@ -6,8 +6,8 @@
  */
 
 #include "Determinize.h"
-#include "../transform/PDAToRHPDA.h"
-#include "../transform/RHPDAToPDA.h"
+#include <automaton/transform/PDAToRHPDA.h>
+#include <automaton/transform/RHPDAToPDA.h>
 #include <automaton/FSM/DFA.h>
 #include <automaton/FSM/MultiInitialStateNFA.h>
 #include <automaton/PDA/DPDA.h>
@@ -19,7 +19,7 @@
 #include <automaton/PDA/RealTimeHeightDeterministicDPDA.h>
 #include <automaton/TM/OneTapeDTM.h>
 #include <automaton/TA/DFTA.h>
-#include "automaton/PDA/RealTimeHeightDeterministicNPDA.h"
+#include <automaton/PDA/RealTimeHeightDeterministicNPDA.h>
 #include <registration/AlgoRegistration.hpp>
 
 namespace automaton {
diff --git a/alib2algo/src/automaton/determinize/DeterminizeNFAPart.hxx b/alib2algo/src/automaton/determinize/DeterminizeNFAPart.hxx
index e5ab925eff..794fc6780e 100644
--- a/alib2algo/src/automaton/determinize/DeterminizeNFAPart.hxx
+++ b/alib2algo/src/automaton/determinize/DeterminizeNFAPart.hxx
@@ -11,8 +11,7 @@
 #include <automaton/FSM/MultiInitialStateNFA.h>
 #include <deque>
 #include <algorithm>
-
-#include <container/ObjectsSet.h>
+#include <set>
 
 namespace automaton {
 
diff --git a/alib2algo/src/automaton/determinize/common/RHDPDACommon.cpp b/alib2algo/src/automaton/determinize/common/RHDPDACommon.cpp
index 53965d1da8..d713d512ee 100644
--- a/alib2algo/src/automaton/determinize/common/RHDPDACommon.cpp
+++ b/alib2algo/src/automaton/determinize/common/RHDPDACommon.cpp
@@ -1,10 +1,6 @@
 #include "RHDPDACommon.h"
 #include "object/AnyObject.h"
 #include "object/Object.h"
-#include <container/ObjectsPair.h>
-#include <container/ObjectsSet.h>
-
-#include <variant>
 
 #include "automaton/PDA/VisiblyPushdownNPDA.h"
 #include "automaton/PDA/RealTimeHeightDeterministicNPDA.h"
diff --git a/alib2algo/src/automaton/properties/AllEpsilonClosure.h b/alib2algo/src/automaton/properties/AllEpsilonClosure.h
index bb9aae4f89..6092cbee68 100644
--- a/alib2algo/src/automaton/properties/AllEpsilonClosure.h
+++ b/alib2algo/src/automaton/properties/AllEpsilonClosure.h
@@ -20,7 +20,7 @@
 #include <automaton/FSM/NFA.h>
 #include <automaton/FSM/DFA.h>
 
-#include "../../regexp/properties/RegExpEpsilon.h"
+#include <regexp/properties/RegExpEpsilon.h>
 
 namespace automaton {
 
diff --git a/alib2algo/src/automaton/properties/EpsilonClosure.h b/alib2algo/src/automaton/properties/EpsilonClosure.h
index 2832650496..5f6d216a63 100644
--- a/alib2algo/src/automaton/properties/EpsilonClosure.h
+++ b/alib2algo/src/automaton/properties/EpsilonClosure.h
@@ -20,7 +20,7 @@
 #include <automaton/FSM/NFA.h>
 #include <automaton/FSM/DFA.h>
 
-#include "../../regexp/properties/RegExpEpsilon.h"
+#include <regexp/properties/RegExpEpsilon.h>
 
 namespace automaton {
 
diff --git a/alib2algo/src/automaton/simplify/EpsilonRemoverIncoming.h b/alib2algo/src/automaton/simplify/EpsilonRemoverIncoming.h
index 9e321466e8..a7f3eb137c 100644
--- a/alib2algo/src/automaton/simplify/EpsilonRemoverIncoming.h
+++ b/alib2algo/src/automaton/simplify/EpsilonRemoverIncoming.h
@@ -13,7 +13,7 @@
 #include <automaton/FSM/NFA.h>
 #include <automaton/FSM/DFA.h>
 
-#include "../properties/EpsilonClosure.h"
+#include <automaton/properties/EpsilonClosure.h>
 
 namespace automaton {
 
diff --git a/alib2algo/src/automaton/simplify/EpsilonRemoverOutgoing.h b/alib2algo/src/automaton/simplify/EpsilonRemoverOutgoing.h
index 195a48984c..2b300b33c8 100644
--- a/alib2algo/src/automaton/simplify/EpsilonRemoverOutgoing.h
+++ b/alib2algo/src/automaton/simplify/EpsilonRemoverOutgoing.h
@@ -13,7 +13,7 @@
 #include <automaton/FSM/NFA.h>
 #include <automaton/FSM/DFA.h>
 
-#include "../properties/EpsilonClosure.h"
+#include <automaton/properties/EpsilonClosure.h>
 
 namespace automaton {
 
diff --git a/alib2algo/src/automaton/simplify/MinimizeBrzozowski.h b/alib2algo/src/automaton/simplify/MinimizeBrzozowski.h
index a03162d17f..f0ee098729 100644
--- a/alib2algo/src/automaton/simplify/MinimizeBrzozowski.h
+++ b/alib2algo/src/automaton/simplify/MinimizeBrzozowski.h
@@ -12,8 +12,8 @@
 #include <automaton/FSM/NFA.h>
 #include <automaton/FSM/MultiInitialStateNFA.h>
 
-#include "../transform/Reverse.h"
-#include "../determinize/Determinize.h"
+#include <automaton/transform/Reverse.h>
+#include <automaton/determinize/Determinize.h>
 
 namespace automaton {
 
diff --git a/alib2algo/src/automaton/simplify/Rename.cpp b/alib2algo/src/automaton/simplify/Rename.cpp
index 7ad34298eb..78a267be44 100644
--- a/alib2algo/src/automaton/simplify/Rename.cpp
+++ b/alib2algo/src/automaton/simplify/Rename.cpp
@@ -8,9 +8,7 @@
 #include "Rename.h"
 
 #include <map>
-#include <deque>
 #include <vector>
-#include <set>
 #include <algorithm>
 #include <sstream>
 #include <iostream>
diff --git a/alib2algo/src/automaton/simplify/Rename.h b/alib2algo/src/automaton/simplify/Rename.h
index 31d992d5e7..9d0c4e1d36 100644
--- a/alib2algo/src/automaton/simplify/Rename.h
+++ b/alib2algo/src/automaton/simplify/Rename.h
@@ -14,7 +14,6 @@
 #include <automaton/PDA/InputDrivenDPDA.h>
 #include <automaton/PDA/VisiblyPushdownDPDA.h>
 #include <automaton/PDA/RealTimeHeightDeterministicDPDA.h>
-#include <automaton/Automaton.h>
 
 namespace automaton {
 
diff --git a/alib2algo/src/automaton/simplify/UnreachableStatesRemover.h b/alib2algo/src/automaton/simplify/UnreachableStatesRemover.h
index b17ee57159..51cf3fd84b 100644
--- a/alib2algo/src/automaton/simplify/UnreachableStatesRemover.h
+++ b/alib2algo/src/automaton/simplify/UnreachableStatesRemover.h
@@ -16,7 +16,7 @@
 #include <automaton/FSM/DFA.h>
 #include <automaton/TA/DFTA.h>
 
-#include "../properties/ReachableStates.h"
+#include <automaton/properties/ReachableStates.h>
 
 namespace automaton {
 
diff --git a/alib2algo/src/automaton/simplify/UselessStatesRemover.h b/alib2algo/src/automaton/simplify/UselessStatesRemover.h
index ebe2669053..3d3489161e 100644
--- a/alib2algo/src/automaton/simplify/UselessStatesRemover.h
+++ b/alib2algo/src/automaton/simplify/UselessStatesRemover.h
@@ -8,7 +8,7 @@
 #ifndef USELESS_STATES_REMOVER_H_
 #define USELESS_STATES_REMOVER_H_
 
-#include "../properties/UsefullStates.h"
+#include <automaton/properties/UsefullStates.h>
 
 #include <automaton/FSM/ExtendedNFA.h>
 #include <automaton/FSM/CompactNFA.h>
diff --git a/alib2algo/src/automaton/transform/Compaction.h b/alib2algo/src/automaton/transform/Compaction.h
index 3a3a75abfd..363062fa92 100644
--- a/alib2algo/src/automaton/transform/Compaction.h
+++ b/alib2algo/src/automaton/transform/Compaction.h
@@ -11,8 +11,8 @@
 #include <stack>
 #include <tuple>
 
-#include "automaton/AutomatonFeatures.h"
 #include <automaton/FSM/CompactNFA.h>
+#include <automaton/FSM/NFA.h>
 #include <automaton/FSM/DFA.h>
 
 namespace automaton {
diff --git a/alib2algo/src/automaton/transform/PDAToRHPDA.cpp b/alib2algo/src/automaton/transform/PDAToRHPDA.cpp
index 6f2858ede0..190810b60c 100644
--- a/alib2algo/src/automaton/transform/PDAToRHPDA.cpp
+++ b/alib2algo/src/automaton/transform/PDAToRHPDA.cpp
@@ -15,8 +15,6 @@
 #include <alphabet/BottomOfTheStackSymbol.h>
 
 #include <set>
-#include <map>
-#include <queue>
 #include <iterator>
 #include <label/InitialStateLabel.h>
 #include <common/createUnique.hpp>
diff --git a/alib2algo/src/automaton/transform/PDAToRHPDA.h b/alib2algo/src/automaton/transform/PDAToRHPDA.h
index 55f96356c0..d14b7beccd 100644
--- a/alib2algo/src/automaton/transform/PDAToRHPDA.h
+++ b/alib2algo/src/automaton/transform/PDAToRHPDA.h
@@ -8,10 +8,6 @@
 #ifndef PDA_TO_RHPDA_H_
 #define PDA_TO_RHPDA_H_
 
-#include <algorithm>
-#include <deque>
-#include <set>
-
 #include "automaton/AutomatonFeatures.h"
 
 namespace automaton {
diff --git a/alib2algo/src/automaton/transform/RHPDAToPDA.cpp b/alib2algo/src/automaton/transform/RHPDAToPDA.cpp
index 32280ad8b2..773add7411 100644
--- a/alib2algo/src/automaton/transform/RHPDAToPDA.cpp
+++ b/alib2algo/src/automaton/transform/RHPDAToPDA.cpp
@@ -17,7 +17,6 @@
 
 #include <set>
 #include <map>
-#include <queue>
 #include <iostream>
 
 #include <registration/CastRegistration.hpp>
diff --git a/alib2algo/src/automaton/transform/RHPDAToPDA.h b/alib2algo/src/automaton/transform/RHPDAToPDA.h
index b70158301a..a3a416da6d 100644
--- a/alib2algo/src/automaton/transform/RHPDAToPDA.h
+++ b/alib2algo/src/automaton/transform/RHPDAToPDA.h
@@ -8,10 +8,6 @@
 #ifndef RHPDA_TO_PDA_H_
 #define RHPDA_TO_PDA_H_
 
-#include <algorithm>
-#include <deque>
-#include <set>
-
 #include "automaton/AutomatonFeatures.h"
 
 namespace automaton {
diff --git a/alib2algo/src/automaton/transform/Reverse.h b/alib2algo/src/automaton/transform/Reverse.h
index 4773c40944..052080e86a 100644
--- a/alib2algo/src/automaton/transform/Reverse.h
+++ b/alib2algo/src/automaton/transform/Reverse.h
@@ -8,9 +8,6 @@
 #ifndef REVERSE_H_
 #define REVERSE_H_
 
-#include <vector>
-#include <algorithm>
-
 #include <automaton/FSM/MultiInitialStateNFA.h>
 #include <automaton/FSM/NFA.h>
 #include <automaton/FSM/DFA.h>
diff --git a/alib2algo/src/grammar/generate/RandomizeGrammar.h b/alib2algo/src/grammar/generate/RandomizeGrammar.h
index ef927fea94..464f65dda9 100644
--- a/alib2algo/src/grammar/generate/RandomizeGrammar.h
+++ b/alib2algo/src/grammar/generate/RandomizeGrammar.h
@@ -8,7 +8,6 @@
 #ifndef GRAMMAR_RANDOMIZE_H_
 #define GRAMMAR_RANDOMIZE_H_
 
-#include <grammar/Grammar.h>
 #include <grammar/Regular/LeftLG.h>
 #include <grammar/Regular/LeftRG.h>
 #include <grammar/Regular/RightLG.h>
diff --git a/alib2algo/src/grammar/simplify/EpsilonRemover.h b/alib2algo/src/grammar/simplify/EpsilonRemover.h
index 4af7e2b93e..582d4b057a 100644
--- a/alib2algo/src/grammar/simplify/EpsilonRemover.h
+++ b/alib2algo/src/grammar/simplify/EpsilonRemover.h
@@ -23,7 +23,7 @@
 #include <grammar/Regular/RightLG.h>
 #include <grammar/Regular/RightRG.h>
 
-#include "../properties/NullableNonterminals.h"
+#include <grammar/properties/NullableNonterminals.h>
 
 namespace grammar {
 
diff --git a/alib2algo/src/grammar/simplify/Rename.cpp b/alib2algo/src/grammar/simplify/Rename.cpp
index 4eb38990b6..b0cc7a6024 100644
--- a/alib2algo/src/grammar/simplify/Rename.cpp
+++ b/alib2algo/src/grammar/simplify/Rename.cpp
@@ -8,11 +8,7 @@
 #include "Rename.h"
 
 #include <algorithm>
-#include <deque>
-#include <iostream>
 #include <map>
-#include <set>
-#include <sstream>
 #include <vector>
 
 #include <hexavigesimal>
diff --git a/alib2algo/src/grammar/simplify/ToCNF.h b/alib2algo/src/grammar/simplify/ToCNF.h
index e6b9cc588c..d1d96976f3 100644
--- a/alib2algo/src/grammar/simplify/ToCNF.h
+++ b/alib2algo/src/grammar/simplify/ToCNF.h
@@ -8,9 +8,6 @@
 #ifndef TO_CNF_H_
 #define TO_CNF_H_
 
-#include <map>
-#include <algorithm>
-
 #include <grammar/ContextFree/CFG.h>
 #include <grammar/ContextFree/EpsilonFreeCFG.h>
 #include <grammar/ContextFree/CNF.h>
diff --git a/alib2algo/src/regexp/convert/ToAutomatonDerivation.cpp b/alib2algo/src/regexp/convert/ToAutomatonDerivation.cpp
index 403ba7c433..ce0514679b 100644
--- a/alib2algo/src/regexp/convert/ToAutomatonDerivation.cpp
+++ b/alib2algo/src/regexp/convert/ToAutomatonDerivation.cpp
@@ -9,15 +9,14 @@
 
 #include <set>
 #include <deque>
-#include <queue>
 #include <vector>
+#include <hexavigesimal>
 
 #include <string/LinearString.h>
-#include <hexavigesimal>
 
-#include "../transform/RegExpDerivation.h"
-#include "../simplify/RegExpOptimize.h"
-#include "../properties/RegExpEpsilon.h"
+#include <regexp/transform/RegExpDerivation.h>
+#include <regexp/simplify/RegExpOptimize.h>
+#include <regexp/properties/RegExpEpsilon.h>
 #include <registration/AlgoRegistration.hpp>
 
 namespace regexp {
diff --git a/alib2algo/src/regexp/convert/ToAutomatonGlushkov.cpp b/alib2algo/src/regexp/convert/ToAutomatonGlushkov.cpp
index 12c7d17468..1762798912 100644
--- a/alib2algo/src/regexp/convert/ToAutomatonGlushkov.cpp
+++ b/alib2algo/src/regexp/convert/ToAutomatonGlushkov.cpp
@@ -16,7 +16,7 @@
 #include "../glushkov/GlushkovIndexate.h"
 #include "../glushkov/GlushkovLast.h"
 
-#include "../properties/RegExpEpsilon.h"
+#include <regexp/properties/RegExpEpsilon.h>
 #include <exception/CommonException.h>
 #include <registration/AlgoRegistration.hpp>
 
diff --git a/alib2algo/src/regexp/convert/ToAutomatonGlushkov.h b/alib2algo/src/regexp/convert/ToAutomatonGlushkov.h
index c1d2797b46..76a692d5fb 100644
--- a/alib2algo/src/regexp/convert/ToAutomatonGlushkov.h
+++ b/alib2algo/src/regexp/convert/ToAutomatonGlushkov.h
@@ -8,8 +8,6 @@
 #ifndef TO_AUTOMATON_GLUSHKOV_H_
 #define TO_AUTOMATON_GLUSHKOV_H_
 
-#include <map>
-
 #include <automaton/FSM/NFA.h>
 #include <regexp/formal/FormalRegExp.h>
 #include <regexp/unbounded/UnboundedRegExp.h>
diff --git a/alib2algo/src/regexp/convert/ToAutomatonThompson.cpp b/alib2algo/src/regexp/convert/ToAutomatonThompson.cpp
index df206bbe41..db81b8f982 100644
--- a/alib2algo/src/regexp/convert/ToAutomatonThompson.cpp
+++ b/alib2algo/src/regexp/convert/ToAutomatonThompson.cpp
@@ -5,9 +5,8 @@
  *	  Author: Tomas Pecka
  */
 #include "ToAutomatonThompson.h"
-#include "regexp/unbounded/UnboundedRegExpElements.h"
-#include "regexp/formal/FormalRegExpElements.h"
-#include <tuple>
+#include <regexp/unbounded/UnboundedRegExpElements.h>
+#include <regexp/formal/FormalRegExpElements.h>
 #include <registration/AlgoRegistration.hpp>
 
 namespace regexp {
diff --git a/alib2algo/src/regexp/convert/ToGrammarRightRGDerivation.cpp b/alib2algo/src/regexp/convert/ToGrammarRightRGDerivation.cpp
index 24cd5d0ae6..dae3e32765 100644
--- a/alib2algo/src/regexp/convert/ToGrammarRightRGDerivation.cpp
+++ b/alib2algo/src/regexp/convert/ToGrammarRightRGDerivation.cpp
@@ -9,15 +9,14 @@
 
 #include <set>
 #include <deque>
-#include <set>
 #include <vector>
-
 #include <hexavigesimal>
+
 #include <common/createUnique.hpp>
 
-#include "../simplify/RegExpOptimize.h"
-#include "../transform/RegExpDerivation.h"
-#include "../properties/RegExpEpsilon.h"
+#include <regexp/simplify/RegExpOptimize.h>
+#include <regexp/transform/RegExpDerivation.h>
+#include <regexp/properties/RegExpEpsilon.h>
 #include <registration/AlgoRegistration.hpp>
 
 namespace regexp {
diff --git a/alib2algo/src/regexp/convert/ToGrammarRightRGGlushkov.cpp b/alib2algo/src/regexp/convert/ToGrammarRightRGGlushkov.cpp
index ef016493b2..5724977b56 100644
--- a/alib2algo/src/regexp/convert/ToGrammarRightRGGlushkov.cpp
+++ b/alib2algo/src/regexp/convert/ToGrammarRightRGGlushkov.cpp
@@ -16,10 +16,12 @@
 #include "../glushkov/GlushkovFirst.h"
 #include "../glushkov/GlushkovLast.h"
 
-#include "../properties/RegExpEpsilon.h"
+#include <regexp/properties/RegExpEpsilon.h>
 #include <exception/CommonException.h>
 #include <registration/AlgoRegistration.hpp>
 
+#include <container/ObjectsPair.h>
+
 namespace regexp {
 
 namespace convert {
diff --git a/alib2algo/src/regexp/glushkov/GlushkovIndexate.h b/alib2algo/src/regexp/glushkov/GlushkovIndexate.h
index 3f088c2548..b72c2f3fc6 100644
--- a/alib2algo/src/regexp/glushkov/GlushkovIndexate.h
+++ b/alib2algo/src/regexp/glushkov/GlushkovIndexate.h
@@ -19,8 +19,6 @@
 #include <regexp/unbounded/UnboundedRegExpIteration.h>
 #include <regexp/unbounded/UnboundedRegExpSymbol.h>
 
-#include <container/ObjectsPair.h>
-
 namespace regexp {
 
 /**
diff --git a/alib2algo/src/regexp/simplify/RegExpOptimize.h b/alib2algo/src/regexp/simplify/RegExpOptimize.h
index 7853763602..543d11dcac 100644
--- a/alib2algo/src/regexp/simplify/RegExpOptimize.h
+++ b/alib2algo/src/regexp/simplify/RegExpOptimize.h
@@ -9,7 +9,6 @@
 #define REGEXPOPTIMIZE_H_
 
 #include <algorithm>
-#include <functional>
 #include <iterator>
 
 #include <regexp/unbounded/UnboundedRegExp.h>
diff --git a/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkov.h b/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkov.h
index 9aa92b8a28..97f977311a 100644
--- a/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkov.h
+++ b/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkov.h
@@ -8,15 +8,12 @@
 #ifndef TO_POSTFIX_PUSHDOWN_AUTOMATON_GLUSHKOV_H_
 #define TO_POSTFIX_PUSHDOWN_AUTOMATON_GLUSHKOV_H_
 
-#include <map>
-
 #include <automaton/PDA/NPDA.h>
 
 #include <rte/formal/FormalRTE.h>
 
-#include <container/ObjectsSet.h>
-
 #include <variant>
+#include <set>
 
 namespace rte {
 
diff --git a/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkovNaive.h b/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkovNaive.h
index bcbe8736d5..129616eb09 100644
--- a/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkovNaive.h
+++ b/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkovNaive.h
@@ -8,8 +8,6 @@
 #ifndef TO_POSTFIX_PUSHDOWN_AUTOMATON_GLUSHKOV_NAIVE_H_
 #define TO_POSTFIX_PUSHDOWN_AUTOMATON_GLUSHKOV_NAIVE_H_
 
-#include <map>
-
 #include <automaton/PDA/NPDA.h>
 #include <rte/formal/FormalRTE.h>
 
diff --git a/alib2algo/src/rte/glushkov/GlushkovFirst.h b/alib2algo/src/rte/glushkov/GlushkovFirst.h
index 8acf0cdf37..ef88884fe0 100644
--- a/alib2algo/src/rte/glushkov/GlushkovFirst.h
+++ b/alib2algo/src/rte/glushkov/GlushkovFirst.h
@@ -9,12 +9,11 @@
 #define RTE_GLUSHKOV_FIRST_H_
 
 #include <set>
+#include <common/ranked_symbol.hpp>
 
 #include <rte/formal/FormalRTE.h>
 #include <rte/RTEFeatures.h>
 
-#include <alphabet/RankedSymbol.h>
-
 namespace rte {
 
 class GlushkovFirst {
diff --git a/alib2algo/src/rte/glushkov/GlushkovFollow.h b/alib2algo/src/rte/glushkov/GlushkovFollow.h
index c98b31fa56..834b8784f6 100644
--- a/alib2algo/src/rte/glushkov/GlushkovFollow.h
+++ b/alib2algo/src/rte/glushkov/GlushkovFollow.h
@@ -11,16 +11,13 @@
 #include <map>
 #include <set>
 #include <vector>
+#include <common/ranked_symbol.hpp>
 
 #include <rte/formal/FormalRTE.h>
 #include <rte/formal/FormalRTEElements.h>
 
-#include <alphabet/RankedSymbol.h>
-
 #include "GlushkovFirst.h"
 #include "GlushkovPos.h"
-#include <iterator>
-#include <vector>
 
 namespace rte {
 
diff --git a/alib2algo/src/rte/glushkov/GlushkovFollowNaive.h b/alib2algo/src/rte/glushkov/GlushkovFollowNaive.h
index 3e267510b9..5eee3690f5 100644
--- a/alib2algo/src/rte/glushkov/GlushkovFollowNaive.h
+++ b/alib2algo/src/rte/glushkov/GlushkovFollowNaive.h
@@ -11,16 +11,13 @@
 #include <map>
 #include <set>
 #include <vector>
+#include <common/ranked_symbol.hpp>
 
 #include <rte/formal/FormalRTE.h>
 #include <rte/formal/FormalRTEElements.h>
 
-#include <alphabet/RankedSymbol.h>
-
 #include "GlushkovFirst.h"
 #include "GlushkovPos.h"
-#include <iterator>
-#include <vector>
 
 namespace rte {
 
diff --git a/alib2algo/src/rte/glushkov/GlushkovIndexate.h b/alib2algo/src/rte/glushkov/GlushkovIndexate.h
index c96ead8a23..c0f4ddad77 100644
--- a/alib2algo/src/rte/glushkov/GlushkovIndexate.h
+++ b/alib2algo/src/rte/glushkov/GlushkovIndexate.h
@@ -8,11 +8,11 @@
 #ifndef RTE_GLUSHKOV_INDEXATE_H_
 #define RTE_GLUSHKOV_INDEXATE_H_
 
+#include <common/ranked_symbol.hpp>
+
 #include <rte/formal/FormalRTE.h>
 #include <rte/RTEFeatures.h>
 
-#include <alphabet/RankedSymbol.h>
-
 namespace rte {
 
 class GlushkovIndexate {
diff --git a/alib2algo/src/rte/glushkov/GlushkovPos.h b/alib2algo/src/rte/glushkov/GlushkovPos.h
index d8a0a5e7e8..765a47044a 100644
--- a/alib2algo/src/rte/glushkov/GlushkovPos.h
+++ b/alib2algo/src/rte/glushkov/GlushkovPos.h
@@ -8,12 +8,12 @@
 #ifndef RTE_GLUSHKOV_POS_H_
 #define RTE_GLUSHKOV_POS_H_
 
+#include <common/ranked_symbol.hpp>
+
 #include <rte/formal/FormalRTE.h>
 #include <rte/RTEFeatures.h>
 #include <rte/formal/FormalRTEElements.h>
 
-#include <alphabet/RankedSymbol.h>
-
 namespace rte {
 
 class GlushkovPos {
diff --git a/alib2algo/src/rte/glushkov/GlushkovSubstitutionMap.h b/alib2algo/src/rte/glushkov/GlushkovSubstitutionMap.h
index dfbabf1b0d..19ad7e737e 100644
--- a/alib2algo/src/rte/glushkov/GlushkovSubstitutionMap.h
+++ b/alib2algo/src/rte/glushkov/GlushkovSubstitutionMap.h
@@ -11,16 +11,13 @@
 #include <map>
 #include <set>
 #include <vector>
+#include <common/ranked_symbol.hpp>
 
 #include <rte/formal/FormalRTE.h>
 #include <rte/formal/FormalRTEElements.h>
 
-#include <alphabet/RankedSymbol.h>
-
 #include "GlushkovFirst.h"
 #include "GlushkovPos.h"
-#include <iterator>
-#include <vector>
 
 namespace rte {
 
diff --git a/alib2algo/src/string/naive/ExactCompare.h b/alib2algo/src/string/naive/ExactCompare.h
index 8bf7ca373d..42abccc91e 100644
--- a/alib2algo/src/string/naive/ExactCompare.h
+++ b/alib2algo/src/string/naive/ExactCompare.h
@@ -8,9 +8,9 @@
 #ifndef EXACT_COMPARE_H_
 #define EXACT_COMPARE_H_
 
-#include "string/LinearString.h"
-#include "string/CyclicString.h"
-#include "string/Epsilon.h"
+#include <string/LinearString.h>
+#include <string/CyclicString.h>
+#include <string/Epsilon.h>
 
 namespace string {
 
diff --git a/alib2algo/src/string/naive/ExactEqual.h b/alib2algo/src/string/naive/ExactEqual.h
index d324cd249c..3fa4db0025 100644
--- a/alib2algo/src/string/naive/ExactEqual.h
+++ b/alib2algo/src/string/naive/ExactEqual.h
@@ -8,9 +8,9 @@
 #ifndef EXACT_EQUAL_H_
 #define EXACT_EQUAL_H_
 
-#include "string/LinearString.h"
-#include "string/CyclicString.h"
-#include "string/Epsilon.h"
+#include <string/LinearString.h>
+#include <string/CyclicString.h>
+#include <string/Epsilon.h>
 
 namespace string {
 
diff --git a/alib2algo/src/stringology/exact/ExactFactorMatch.h b/alib2algo/src/stringology/exact/ExactFactorMatch.h
index 08321f3f53..6142287ed4 100644
--- a/alib2algo/src/stringology/exact/ExactFactorMatch.h
+++ b/alib2algo/src/stringology/exact/ExactFactorMatch.h
@@ -5,11 +5,10 @@
  *      Author: Jan Travnicek
  */
 
-#ifndef _EXACT_MATCH_H__
-#define _EXACT_MATCH_H__
+#ifndef _EXACT_MATCH_H_
+#define _EXACT_MATCH_H_
 
 #include <set>
-#include <deque>
 
 #include <string/LinearString.h>
 
@@ -48,4 +47,4 @@ ext::set < unsigned > ExactFactorMatch::match ( const string::LinearString < Sym
 
 } /* namespace stringology */
 
-#endif /* _EXACT_MATCH_H__ */
+#endif /* _EXACT_MATCH_H_ */
diff --git a/alib2algo/src/stringology/indexing/ExactMultiNondeterministicSubsequenceAutomaton.h b/alib2algo/src/stringology/indexing/ExactMultiNondeterministicSubsequenceAutomaton.h
index 65fb7609a8..275e082d7b 100644
--- a/alib2algo/src/stringology/indexing/ExactMultiNondeterministicSubsequenceAutomaton.h
+++ b/alib2algo/src/stringology/indexing/ExactMultiNondeterministicSubsequenceAutomaton.h
@@ -8,12 +8,10 @@
 #ifndef _EXACT_MULTI_NONDETERMINISTIC_SUBSEQUENCE_AUTOMATON__H_
 #define _EXACT_MULTI_NONDETERMINISTIC_SUBSEQUENCE_AUTOMATON__H_
 
-#include <automaton/Automaton.h>
 #include <automaton/FSM/EpsilonNFA.h>
 #include <string/LinearString.h>
-#include <string/String.h>
-#include <container/ObjectsPair.h>
-#include <primitive/Unsigned.h>
+
+#include <pair>
 
 namespace stringology {
 
diff --git a/alib2algo/src/stringology/indexing/NondeterministicExactFactorAutomaton.cpp b/alib2algo/src/stringology/indexing/NondeterministicExactFactorAutomaton.cpp
index c2e2a639bc..81b5eee1a9 100644
--- a/alib2algo/src/stringology/indexing/NondeterministicExactFactorAutomaton.cpp
+++ b/alib2algo/src/stringology/indexing/NondeterministicExactFactorAutomaton.cpp
@@ -6,10 +6,6 @@
  */
 
 #include "NondeterministicExactFactorAutomaton.h"
-#include <string/LinearString.h>
-#include <string/Epsilon.h>
-
-#include <deque>
 #include <registration/AlgoRegistration.hpp>
 
 namespace stringology {
diff --git a/alib2algo/src/stringology/indexing/NondeterministicExactFactorAutomaton.h b/alib2algo/src/stringology/indexing/NondeterministicExactFactorAutomaton.h
index 785645e251..f2a3f7ddc8 100644
--- a/alib2algo/src/stringology/indexing/NondeterministicExactFactorAutomaton.h
+++ b/alib2algo/src/stringology/indexing/NondeterministicExactFactorAutomaton.h
@@ -10,7 +10,6 @@
 
 #include <automaton/FSM/EpsilonNFA.h>
 #include <string/LinearString.h>
-#include <primitive/Unsigned.h>
 
 namespace stringology {
 
diff --git a/alib2algo/src/stringology/indexing/NondeterministicExactSuffixAutomaton.h b/alib2algo/src/stringology/indexing/NondeterministicExactSuffixAutomaton.h
index 723c0ef9b6..1ea645c973 100644
--- a/alib2algo/src/stringology/indexing/NondeterministicExactSuffixAutomaton.h
+++ b/alib2algo/src/stringology/indexing/NondeterministicExactSuffixAutomaton.h
@@ -7,7 +7,6 @@
 
 #include <automaton/FSM/EpsilonNFA.h>
 #include <string/LinearString.h>
-#include <primitive/Unsigned.h>
 
 namespace stringology {
 
diff --git a/alib2algo/src/stringology/properties/BackboneLength.h b/alib2algo/src/stringology/properties/BackboneLength.h
index 468c4d6589..28d8b33561 100644
--- a/alib2algo/src/stringology/properties/BackboneLength.h
+++ b/alib2algo/src/stringology/properties/BackboneLength.h
@@ -9,7 +9,6 @@
 #define BACKBONE_LENGTH_H
 
 #include <automaton/FSM/DFA.h>
-#include <set>
 #include <queue>
 #include <algorithm>
 #include <utility>
diff --git a/alib2algo/src/stringology/query/BNDMOccurrences.cpp b/alib2algo/src/stringology/query/BNDMOccurrences.cpp
index e5eae8709e..ac498517cc 100644
--- a/alib2algo/src/stringology/query/BNDMOccurrences.cpp
+++ b/alib2algo/src/stringology/query/BNDMOccurrences.cpp
@@ -6,8 +6,6 @@
  */
 
 #include "BNDMOccurrences.h"
-
-#include <string/LinearString.h>
 #include <registration/AlgoRegistration.hpp>
 
 namespace stringology {
diff --git a/alib2algo/src/stringology/query/BackwardDAWGMatching.cpp b/alib2algo/src/stringology/query/BackwardDAWGMatching.cpp
index 02510a6eb7..f72c0101a3 100644
--- a/alib2algo/src/stringology/query/BackwardDAWGMatching.cpp
+++ b/alib2algo/src/stringology/query/BackwardDAWGMatching.cpp
@@ -3,15 +3,11 @@
  */
 
 #include "BackwardDAWGMatching.h"
-#include "stringology/matching/DAWGMatcherConstruction.h"
-#include "stringology/properties/BackboneLength.h"
+#include <stringology/matching/DAWGMatcherConstruction.h>
+#include <stringology/properties/BackboneLength.h>
 
 #include <string/LinearString.h>
-#include <alphabet/Symbol.h>
 
-#include <algorithm>
-#include <map>
-#include <measure>
 #include <registration/AlgoRegistration.hpp>
 
 namespace stringology {
diff --git a/alib2algo/src/stringology/query/BackwardOracleMatching.cpp b/alib2algo/src/stringology/query/BackwardOracleMatching.cpp
index 3e99069b57..60f9abe778 100644
--- a/alib2algo/src/stringology/query/BackwardOracleMatching.cpp
+++ b/alib2algo/src/stringology/query/BackwardOracleMatching.cpp
@@ -3,15 +3,10 @@
  */
 
 #include "BackwardOracleMatching.h"
-#include "stringology/matching/OracleMatcherConstruction.h"
-#include "stringology/properties/BackboneLength.h"
+#include <stringology/matching/OracleMatcherConstruction.h>
+#include <stringology/properties/BackboneLength.h>
 
 #include <string/LinearString.h>
-#include <alphabet/Symbol.h>
-
-#include <algorithm>
-#include <map>
-#include <measure>
 #include <registration/AlgoRegistration.hpp>
 
 namespace stringology {
diff --git a/alib2algo/src/tree/generate/RandomTreeFactory.cpp b/alib2algo/src/tree/generate/RandomTreeFactory.cpp
index 0944eb1baa..6603529287 100644
--- a/alib2algo/src/tree/generate/RandomTreeFactory.cpp
+++ b/alib2algo/src/tree/generate/RandomTreeFactory.cpp
@@ -15,13 +15,14 @@
 #include <ctime>
 #include <cmath>
 
+#include <common/ranked_symbol.hpp>
+
 #include <iostream>
 #include <random>
 
 #include <alphabet/SubtreeWildcardSymbol.h>
 #include <alphabet/NonlinearVariableSymbol.h>
 #include <exception/CommonException.h>
-#include <alphabet/RankedSymbol.h>
 
 #include <registration/AlgoRegistration.hpp>
 
diff --git a/alib2algo/src/tree/properties/ExactSubtreeRepeats.h b/alib2algo/src/tree/properties/ExactSubtreeRepeats.h
index 138f95d8f7..703dee6d5e 100644
--- a/alib2algo/src/tree/properties/ExactSubtreeRepeats.h
+++ b/alib2algo/src/tree/properties/ExactSubtreeRepeats.h
@@ -10,15 +10,14 @@
 
 #include <alphabet/SymbolFeatures.h>
 
-#include <alphabet/RankedSymbol.h>
 #include <deque>
 #include <map>
-#include <primitive/Unsigned.h>
 #include <queue>
 #include <stack>
 #include <tree>
 #include <tuple>
 #include <vector>
+#include <common/ranked_symbol.hpp>
 
 #include "SubtreeJumpTable.h"
 
diff --git a/alib2algo/src/tree/properties/ExactSubtreeRepeatsNaive.h b/alib2algo/src/tree/properties/ExactSubtreeRepeatsNaive.h
index 6a1d2e17ff..3025a6c57d 100644
--- a/alib2algo/src/tree/properties/ExactSubtreeRepeatsNaive.h
+++ b/alib2algo/src/tree/properties/ExactSubtreeRepeatsNaive.h
@@ -13,8 +13,7 @@
 #include <map>
 #include <vector>
 #include <tree>
-#include <alphabet/RankedSymbol.h>
-#include <primitive/Unsigned.h>
+#include <common/ranked_symbol.hpp>
 
 #include "SubtreeJumpTable.h"
 
-- 
GitLab