Skip to content

Commit

Permalink
Include what you use for Sims
Browse files Browse the repository at this point in the history
  • Loading branch information
reiniscirpons committed Dec 2, 2024
1 parent 8308ba3 commit b868722
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 52 deletions.
62 changes: 31 additions & 31 deletions include/libsemigroups/sims.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -56,41 +56,41 @@
#ifndef LIBSEMIGROUPS_SIMS_HPP_
#define LIBSEMIGROUPS_SIMS_HPP_

#include <atomic>
#include <iostream>

#include <algorithm> // for max
#include <cstddef> // for size_t
#include <cstdint> // for uint64_t, uint32_t
// #include <filesystem> // for path, create_directories, temp_directory_path
#include <functional> // for function
#include <iterator> // for forward_iterator_tag
#include <libsemigroups/detail/report.hpp>
#include <libsemigroups/knuth-bendix.hpp>
#include <mutex> // for mutex
#include <string> // for operator+, basic_string
#include <thread>
#include <utility> // for move
#include <vector> // for vector

#include <fstream>

#include "debug.hpp" // for LIBSEMIGROUPS_ASSERT
#include "exception.hpp" // for LIBSEMIGROUPS_EXCEPTION
#include "knuth-bendix.hpp" // for KnuthBendix
#include "presentation.hpp" // for Presentation, Presentati...
#include "to-presentation.hpp" // for to_presentation
#include "todd-coxeter.hpp" // for ToddCoxeter
#include "types.hpp" // for word_type,
#include "word-graph.hpp" // for WordGraph

#include "matrix.hpp"
#include <algorithm> // for max, fill, count, for_each
#include <atomic> // for atomic_uint64_t, __atomic_base
#include <bits/chrono.h> // for operator-
#include <cstddef> // for size_t
#include <cstdint> // for uint64_t, uint32_t
#include <functional> // for function
#include <iterator> // for distance, forward_iterator_tag, pair
#include <list> // for operator!=
#include <memory> // for unique_ptr
#include <mutex> // for mutex
#include <string> // for operator+, basic_string, string, to_string
#include <thread> // for thread
#include <type_traits> // for decay_t
#include <utility> // for move, pair, swap
#include <vector> // for vector

#include "constants.hpp" // for operator!=, operator==, Max, UNDEFINED
#include "debug.hpp" // for LIBSEMIGROUPS_ASSERT
#include "dot.hpp" // for Dot
#include "exception.hpp" // for LIBSEMIGROUPS_EXCEPTION, LibsemigroupsExcep...
#include "forest.hpp" // for Forest
#include "knuth-bendix.hpp" // for KnuthBendix, to_presentation
#include "matrix.hpp" // for DynamicMatrix, MatrixCommon, BMat
#include "presentation.hpp" // for Presentation, longest_rule_length, short...
#include "runner.hpp" // for delta, Reporter
#include "todd-coxeter.hpp" // for ToddCoxeter
#include "types.hpp" // for word_type, relation_type, congruence_kind
#include "word-graph.hpp" // for Joiner, WordGraph

#include "detail/felsch-graph.hpp" // for FelschGraph
#include "detail/fmt.hpp" // for format, print
#include "detail/iterator.hpp" // for detail/default_postfix_increment
#include "detail/rewriters.hpp"
#include "detail/rewriters.hpp" // for RewriteTrie

#include "rx/ranges.hpp"
#include "rx/ranges.hpp" // for operator|, iterator_range

//! \defgroup congruences_group Congruences
//!
Expand Down
21 changes: 13 additions & 8 deletions src/sims.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,25 +28,30 @@

#include "libsemigroups/sims.hpp"

#include <algorithm> // for max, find_if, fill
#include <chrono> // for duration, durat...
#include <functional> // for ref
#include <memory> // for unique_ptr, mak...
#include <string> // for operator+, basi...
#include <thread> // for thread, yield
#include <utility> // for swap
#include <algorithm> // for fill, reverse
#include <functional> // for function, ref
#include <memory> // for unique_ptr, make_unique, swap
#include <string> // for basic_string, string, operator+
#include <thread> // for thread, yield
#include <tuple> // for _Swallow_assign, ignore
#include <unordered_map> // for operator==, operator!=
#include <utility> // for move, swap, pair

#include "libsemigroups/constants.hpp" // for operator!=, ope...
#include "libsemigroups/debug.hpp" // for LIBSEMIGROUPS_A...
#include "libsemigroups/exception.hpp" // for LIBSEMIGROUPS_E...
#include "libsemigroups/forest.hpp" // for Forest
#include "libsemigroups/froidure-pin.hpp" // for FroidurePin
#include "libsemigroups/knuth-bendix.hpp" // for KnuthBendix, to_present...
#include "libsemigroups/presentation.hpp" // for Presentation
#include "libsemigroups/runner.hpp" // for delta, Reporter
#include "libsemigroups/to-froidure-pin.hpp" // for to_word_graph
#include "libsemigroups/transf.hpp" // for Transf, validate
#include "libsemigroups/transf.hpp" // for Transf, one
#include "libsemigroups/types.hpp" // for congruence_kind
#include "libsemigroups/word-graph.hpp" // for follow_path_no_...

#include "libsemigroups/detail/felsch-graph.hpp" // for FelschGraph
#include "libsemigroups/detail/iterator.hpp" // for operator+
#include "libsemigroups/detail/report.hpp" // for report_default
#include "libsemigroups/detail/stl.hpp" // for JoinThreads
#include "libsemigroups/detail/string.hpp" // for group_digits
Expand Down
42 changes: 29 additions & 13 deletions tests/test-sims.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,40 +16,56 @@
// along with this program. If not, see <http://www.gnu.org/licenses/>.
//

#include "libsemigroups/detail/stl.hpp"
#include "libsemigroups/word-graph.hpp"
#include <cstdint>
#include <iterator>
#include <libsemigroups/constants.hpp>
#include <libsemigroups/todd-coxeter.hpp>
#include <thread>
#define CATCH_CONFIG_ENABLE_PAIR_STRINGMAKER
#define CATCH_CONFIG_ENABLE_TUPLE_STRINGMAKER

#include <algorithm> // for fill, transform, equal, sort, for_each
#include <array> // for array
#include <atomic> // for atomic, atomic_uint64_t, __atomic_b...
#include <bits/chrono.h> // for milliseconds
#include <cmath> // for pow
#include <cstddef> // for size_t
#include <cstdint> // for uint64_t, uint32_t, uint8_t
#include <ctype.h> // for isprint
#include <functional> // for function
#include <initializer_list> // for initializer_list
#include <iostream> // for cout
#include <random>
#include <vector> // for vector
#include <iterator> // for distance
#include <string> // for basic_string, operator==, string
#include <thread> // for thread
#include <tuple> // for tuple, operator==
#include <type_traits> // for decay_t
#include <unordered_map> // for operator!=, operator==
#include <utility> // for pair, move, swap
#include <vector> // for vector

#include "catch_amalgamated.hpp" // for REQUIRE, REQUIRE_THROWS_AS, REQUI...
#include "test-main.hpp" // for LIBSEMIGROUPS_TEST_CASE

#include "libsemigroups/bipart.hpp" // for Bipartition
#include "libsemigroups/exception.hpp" // for LibsemigroupsException
#include "libsemigroups/fpsemi-examples.hpp" // for brauer_monoid etc
#include "libsemigroups/froidure-pin.hpp" // for FroidurePin
#include "libsemigroups/gabow.hpp" // for Gabow
#include "libsemigroups/knuth-bendix.hpp" // for redundant_rule
#include "libsemigroups/matrix.hpp" // for DynamicMatrix, BMat
#include "libsemigroups/order.hpp" // for shortlex_compare, Order
#include "libsemigroups/presentation.hpp" // for Presentation
#include "libsemigroups/sims.hpp" // for Sims1
#include "libsemigroups/to-froidure-pin.hpp" // for make
#include "libsemigroups/to-presentation.hpp" // for make
#include "libsemigroups/transf.hpp" // for Transf
#include "libsemigroups/types.hpp" // for word_type
#include "libsemigroups/words.hpp" // for operator""_w, operator+, pow
#include "libsemigroups/word-graph.hpp" // for WordGraph
#include "libsemigroups/words.hpp" // for operator""_w, operator+
#include <libsemigroups/constants.hpp> // for UNDEFINED
#include <libsemigroups/todd-coxeter.hpp> // for ToddCoxeter

#include "libsemigroups/detail/report.hpp"
#include "libsemigroups/ranges.hpp" // for operator|, to_vector
#include "libsemigroups/detail/eigen.hpp" // for DenseBase::row
#include "libsemigroups/detail/fmt.hpp" // for format, print
#include "libsemigroups/detail/iterator.hpp" // for operator+
#include "libsemigroups/detail/report.hpp" // for ReportGuard, SuppressReportFor

#include "rx/ranges.hpp" // for operator|, iterator_range

namespace libsemigroups {

Expand Down

0 comments on commit b868722

Please sign in to comment.