From a2d10e05f8bc0dc87bf2b75ee04dde5ed8f9ce18 Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Mon, 27 Nov 2023 20:56:02 -0500 Subject: [PATCH 01/11] first stab --- CMakeLists.txt | 32 ++++++++++++++++--- cmake/staqConfig.cmake.in | 4 +++ cmake/staq_uninstall.cmake.in | 5 ++- include/mapping/device.hpp | 3 +- include/output/lattice_surgery.hpp | 3 +- include/synthesis/logic_synthesis.hpp | 16 +++++----- pystaq/staq_wrapper.cpp | 1 + {libs => third_party/libs}/CLI/App.hpp | 0 {libs => third_party/libs}/CLI/CLI.hpp | 0 {libs => third_party/libs}/CLI/Config.hpp | 0 {libs => third_party/libs}/CLI/ConfigFwd.hpp | 0 {libs => third_party/libs}/CLI/Error.hpp | 0 {libs => third_party/libs}/CLI/Formatter.hpp | 0 .../libs}/CLI/FormatterFwd.hpp | 0 {libs => third_party/libs}/CLI/Macros.hpp | 0 {libs => third_party/libs}/CLI/Option.hpp | 0 {libs => third_party/libs}/CLI/Split.hpp | 0 .../libs}/CLI/StringTools.hpp | 0 {libs => third_party/libs}/CLI/Timer.hpp | 0 {libs => third_party/libs}/CLI/TypeTools.hpp | 0 {libs => third_party/libs}/CLI/Validators.hpp | 0 {libs => third_party/libs}/CLI/Version.hpp | 0 {libs => third_party/libs}/CMakeLists.txt | 0 .../libs}/caterpillar/details/utils.hpp | 0 .../optimization/optimization_graph.hpp | 0 .../optimization/post_opt_esop.hpp | 0 .../libs}/caterpillar/stg_gate.hpp | 0 .../libs}/caterpillar/synthesis/lhrs.hpp | 0 .../libs}/caterpillar/synthesis/sat.hpp | 0 .../caterpillar/synthesis/satbased_cnotrz.hpp | 0 .../caterpillar/synthesis/stg_to_mcx.hpp | 0 .../synthesis/strategies/action.hpp | 0 .../strategies/bennett_mapping_strategy.hpp | 0 .../strategies/best_fit_mapping_strategy.hpp | 0 .../strategies/eager_mapping_strategy.hpp | 0 .../synthesis/strategies/mapping_strategy.hpp | 0 .../strategies/pebbling_mapping_strategy.hpp | 0 .../strategies/xag_mapping_strategy.hpp | 0 .../verification/circuit_to_logic_network.hpp | 0 .../libs}/easy/cli/commands/cover.hpp | 0 .../libs}/easy/cli/commands/ec.hpp | 0 .../libs}/easy/cli/commands/exorlink.hpp | 0 .../libs}/easy/cli/commands/function.hpp | 0 .../libs}/easy/cli/commands/read_fns.hpp | 0 .../libs}/easy/cli/commands/sort.hpp | 0 .../libs}/easy/cli/commands/synth.hpp | 0 .../libs}/easy/cli/stores/esop.hpp | 0 .../libs}/easy/cli/stores/function.hpp | 0 {libs => third_party/libs}/easy/easy.hpp | 0 .../libs}/easy/esop/combine.hpp | 0 .../libs}/easy/esop/constructors.hpp | 0 {libs => third_party/libs}/easy/esop/cost.hpp | 0 .../libs}/easy/esop/cube_manipulators.hpp | 0 .../libs}/easy/esop/cube_utils.hpp | 0 {libs => third_party/libs}/easy/esop/esop.hpp | 0 .../libs}/easy/esop/esop_from_pkrm.hpp | 0 .../libs}/easy/esop/esop_from_pprm.hpp | 0 .../libs}/easy/esop/exact_synthesis.hpp | 0 .../libs}/easy/esop/exorlink.hpp | 0 .../libs}/easy/esop/exorlink4.def | 0 .../libs}/easy/esop/exorlink5.def | 0 .../libs}/easy/esop/exorlink6.def | 0 .../libs}/easy/esop/helliwell.hpp | 0 .../libs}/easy/esop/synthesis.hpp | 0 .../libs}/easy/io/read_esop.hpp | 0 .../libs}/easy/io/write_esop.hpp | 0 .../libs}/easy/sat/cnf_writer.hpp | 0 .../libs}/easy/sat/constraints.hpp | 0 {libs => third_party/libs}/easy/sat/gauss.hpp | 0 .../libs}/easy/sat/sat_solver.hpp | 0 .../libs}/easy/sat/xor_clauses_to_cnf.hpp | 0 .../libs}/easy/sat2/cardinality.hpp | 0 .../libs}/easy/sat2/cnf_from_xcnf.hpp | 0 .../libs}/easy/sat2/core_utils.hpp | 0 .../libs}/easy/sat2/maxsat.hpp | 0 .../libs}/easy/sat2/sat_solver.hpp | 0 .../libs}/easy/utils/dynamic_bitset.hpp | 0 .../libs}/easy/utils/stopwatch.hpp | 0 .../libs}/easy/utils/string_utils.hpp | 0 .../libs}/ez/direct_iterator.hpp | 0 {libs => third_party/libs}/fmt/chrono.h | 0 {libs => third_party/libs}/fmt/color.h | 0 {libs => third_party/libs}/fmt/container.h | 0 {libs => third_party/libs}/fmt/core.h | 0 {libs => third_party/libs}/fmt/format-inl.h | 0 {libs => third_party/libs}/fmt/format.cc | 0 {libs => third_party/libs}/fmt/format.h | 0 {libs => third_party/libs}/fmt/locale.h | 0 {libs => third_party/libs}/fmt/ostream.cc | 0 {libs => third_party/libs}/fmt/ostream.h | 0 {libs => third_party/libs}/fmt/posix.cc | 0 {libs => third_party/libs}/fmt/posix.h | 0 {libs => third_party/libs}/fmt/printf.cc | 0 {libs => third_party/libs}/fmt/printf.h | 0 {libs => third_party/libs}/fmt/ranges.h | 0 {libs => third_party/libs}/fmt/string.h | 0 {libs => third_party/libs}/fmt/time.h | 0 .../libs}/glucose/glucose.hpp | 0 {libs => third_party/libs}/kitty/affine.hpp | 0 .../libs}/kitty/algorithm.hpp | 0 .../libs}/kitty/bit_operations.hpp | 0 {libs => third_party/libs}/kitty/cnf.hpp | 0 .../libs}/kitty/constructors.hpp | 0 {libs => third_party/libs}/kitty/cube.hpp | 0 .../libs}/kitty/decomposition.hpp | 0 .../libs}/kitty/detail/constants.hpp | 0 .../libs}/kitty/detail/linear_constants.hpp | 0 .../libs}/kitty/detail/mscfix.hpp | 0 .../libs}/kitty/detail/utils.hpp | 0 .../libs}/kitty/dynamic_truth_table.hpp | 0 .../libs}/kitty/enumeration.hpp | 0 {libs => third_party/libs}/kitty/esop.hpp | 0 {libs => third_party/libs}/kitty/hash.hpp | 0 .../libs}/kitty/implicant.hpp | 0 {libs => third_party/libs}/kitty/isop.hpp | 0 {libs => third_party/libs}/kitty/kitty.hpp | 0 {libs => third_party/libs}/kitty/npn.hpp | 0 .../libs}/kitty/operations.hpp | 0 .../libs}/kitty/operators.hpp | 0 .../libs}/kitty/permutation.hpp | 0 {libs => third_party/libs}/kitty/print.hpp | 0 .../libs}/kitty/properties.hpp | 0 {libs => third_party/libs}/kitty/spectral.hpp | 0 .../libs}/kitty/static_truth_table.hpp | 0 {libs => third_party/libs}/kitty/traits.hpp | 0 {libs => third_party/libs}/lorina/aiger.hpp | 0 {libs => third_party/libs}/lorina/bench.hpp | 0 {libs => third_party/libs}/lorina/blif.hpp | 0 {libs => third_party/libs}/lorina/common.hpp | 0 .../libs}/lorina/detail/tokenizer.hpp | 0 .../libs}/lorina/detail/utils.hpp | 0 .../libs}/lorina/diagnostics.hpp | 0 {libs => third_party/libs}/lorina/lorina.hpp | 0 {libs => third_party/libs}/lorina/pla.hpp | 0 {libs => third_party/libs}/lorina/verilog.hpp | 0 .../libs}/lorina/verilog_regex.hpp | 0 .../libs}/mockturtle/algorithms/aig_resub.hpp | 0 .../mockturtle/algorithms/akers_synthesis.hpp | 0 .../mockturtle/algorithms/cell_window.hpp | 0 .../libs}/mockturtle/algorithms/cleanup.hpp | 0 .../libs}/mockturtle/algorithms/cnf.hpp | 0 .../mockturtle/algorithms/collapse_mapped.hpp | 0 .../mockturtle/algorithms/cut_enumeration.hpp | 0 .../algorithms/cut_enumeration/cnf_cut.hpp | 0 .../algorithms/cut_enumeration/gia_cut.hpp | 0 .../algorithms/cut_enumeration/mf_cut.hpp | 0 .../algorithms/cut_enumeration/spectr_cut.hpp | 0 .../mockturtle/algorithms/cut_rewriting.hpp | 0 .../algorithms/detail/mffc_utils.hpp | 0 .../mockturtle/algorithms/dont_cares.hpp | 0 .../algorithms/dsd_decomposition.hpp | 0 .../algorithms/equivalence_checking.hpp | 0 .../mockturtle/algorithms/gates_to_nodes.hpp | 0 .../mockturtle/algorithms/lut_mapping.hpp | 0 .../algorithms/mig_algebraic_rewriting.hpp | 0 .../libs}/mockturtle/algorithms/mig_resub.hpp | 0 .../libs}/mockturtle/algorithms/miter.hpp | 0 .../algorithms/node_resynthesis.hpp | 0 .../algorithms/node_resynthesis/akers.hpp | 0 .../algorithms/node_resynthesis/direct.hpp | 0 .../algorithms/node_resynthesis/exact.hpp | 0 .../algorithms/node_resynthesis/mig_npn.hpp | 0 .../algorithms/node_resynthesis/xag_minmc.hpp | 0 .../algorithms/node_resynthesis/xag_npn.hpp | 0 .../algorithms/node_resynthesis/xmg_npn.hpp | 0 .../mockturtle/algorithms/reconv_cut.hpp | 0 .../mockturtle/algorithms/reconv_cut2.hpp | 0 .../mockturtle/algorithms/refactoring.hpp | 0 .../mockturtle/algorithms/resubstitution.hpp | 0 .../mockturtle/algorithms/satlut_mapping.hpp | 0 .../mockturtle/algorithms/simulation.hpp | 0 .../algorithms/xmg_algebraic_rewriting.hpp | 0 .../mockturtle/generators/arithmetic.hpp | 0 .../libs}/mockturtle/generators/control.hpp | 0 .../generators/modular_arithmetic.hpp | 0 .../generators/random_logic_generator.hpp | 0 .../libs}/mockturtle/generators/sorting.hpp | 0 .../libs}/mockturtle/interface.hpp | 0 .../libs}/mockturtle/io/aiger_reader.hpp | 0 .../libs}/mockturtle/io/bench_reader.hpp | 0 .../libs}/mockturtle/io/pla_reader.hpp | 0 .../libs}/mockturtle/io/verilog_reader.hpp | 0 .../libs}/mockturtle/io/write_bench.hpp | 0 .../libs}/mockturtle/io/write_dimacs.hpp | 0 .../libs}/mockturtle/io/write_dot.hpp | 0 .../libs}/mockturtle/io/write_verilog.hpp | 0 .../libs}/mockturtle/mockturtle.hpp | 0 .../libs}/mockturtle/networks/aig.hpp | 0 .../mockturtle/networks/detail/foreach.hpp | 0 .../libs}/mockturtle/networks/events.hpp | 0 .../libs}/mockturtle/networks/klut.hpp | 0 .../libs}/mockturtle/networks/mig.hpp | 0 .../libs}/mockturtle/networks/storage.hpp | 0 .../libs}/mockturtle/networks/xag.hpp | 0 .../libs}/mockturtle/networks/xmg.hpp | 0 .../libs}/mockturtle/properties/migcost.hpp | 0 .../libs}/mockturtle/traits.hpp | 0 .../libs}/mockturtle/utils/algorithm.hpp | 0 .../libs}/mockturtle/utils/cuts.hpp | 0 .../libs}/mockturtle/utils/mixed_radix.hpp | 0 .../libs}/mockturtle/utils/node_map.hpp | 0 .../libs}/mockturtle/utils/progress_bar.hpp | 0 .../libs}/mockturtle/utils/stopwatch.hpp | 0 .../libs}/mockturtle/utils/string_utils.hpp | 0 .../mockturtle/utils/truth_table_cache.hpp | 0 .../libs}/mockturtle/views/cut_view.hpp | 0 .../libs}/mockturtle/views/depth_view.hpp | 0 .../libs}/mockturtle/views/fanout_view.hpp | 0 .../libs}/mockturtle/views/fanout_view2.hpp | 0 .../libs}/mockturtle/views/immutable_view.hpp | 0 .../libs}/mockturtle/views/mapping_view.hpp | 0 .../libs}/mockturtle/views/mffc_view.hpp | 0 .../libs}/mockturtle/views/topo_view.hpp | 0 .../libs}/mockturtle/views/window_view.hpp | 0 .../libs}/nlohmann/adl_serializer.hpp | 0 .../nlohmann/byte_container_with_subtype.hpp | 0 .../nlohmann/detail/conversions/from_json.hpp | 0 .../nlohmann/detail/conversions/to_chars.hpp | 0 .../nlohmann/detail/conversions/to_json.hpp | 0 .../libs}/nlohmann/detail/exceptions.hpp | 0 .../libs}/nlohmann/detail/hash.hpp | 0 .../nlohmann/detail/input/binary_reader.hpp | 0 .../nlohmann/detail/input/input_adapters.hpp | 0 .../libs}/nlohmann/detail/input/json_sax.hpp | 0 .../libs}/nlohmann/detail/input/lexer.hpp | 0 .../libs}/nlohmann/detail/input/parser.hpp | 0 .../nlohmann/detail/input/position_t.hpp | 0 .../detail/iterators/internal_iterator.hpp | 0 .../nlohmann/detail/iterators/iter_impl.hpp | 0 .../detail/iterators/iteration_proxy.hpp | 0 .../detail/iterators/iterator_traits.hpp | 0 .../iterators/json_reverse_iterator.hpp | 0 .../detail/iterators/primitive_iterator.hpp | 0 .../libs}/nlohmann/detail/json_pointer.hpp | 0 .../libs}/nlohmann/detail/json_ref.hpp | 0 .../libs}/nlohmann/detail/macro_scope.hpp | 0 .../libs}/nlohmann/detail/macro_unscope.hpp | 0 .../libs}/nlohmann/detail/meta/cpp_future.hpp | 0 .../libs}/nlohmann/detail/meta/detected.hpp | 0 .../nlohmann/detail/meta/identity_tag.hpp | 0 .../libs}/nlohmann/detail/meta/is_sax.hpp | 0 .../nlohmann/detail/meta/type_traits.hpp | 0 .../libs}/nlohmann/detail/meta/void_t.hpp | 0 .../nlohmann/detail/output/binary_writer.hpp | 0 .../detail/output/output_adapters.hpp | 0 .../nlohmann/detail/output/serializer.hpp | 0 .../libs}/nlohmann/detail/string_escape.hpp | 0 .../libs}/nlohmann/detail/value_t.hpp | 0 {libs => third_party/libs}/nlohmann/json.hpp | 0 .../libs}/nlohmann/json_fwd.hpp | 0 .../libs}/nlohmann/ordered_map.hpp | 0 .../nlohmann/thirdparty/hedley/hedley.hpp | 0 .../thirdparty/hedley/hedley_undef.hpp | 0 .../libs}/pthreadwin32/pthread.h | 0 .../libs}/pthreadwin32/sched.h | 0 .../libs}/pthreadwin32/semaphore.h | 0 {libs => third_party/libs}/pybind11/attr.h | 0 .../libs}/pybind11/buffer_info.h | 0 {libs => third_party/libs}/pybind11/cast.h | 0 {libs => third_party/libs}/pybind11/chrono.h | 0 {libs => third_party/libs}/pybind11/common.h | 0 {libs => third_party/libs}/pybind11/complex.h | 0 .../libs}/pybind11/detail/class.h | 0 .../libs}/pybind11/detail/common.h | 0 .../libs}/pybind11/detail/descr.h | 0 .../libs}/pybind11/detail/init.h | 0 .../libs}/pybind11/detail/internals.h | 0 .../libs}/pybind11/detail/type_caster_base.h | 0 .../libs}/pybind11/detail/typeid.h | 0 {libs => third_party/libs}/pybind11/eigen.h | 0 .../libs}/pybind11/eigen/matrix.h | 0 .../libs}/pybind11/eigen/tensor.h | 0 {libs => third_party/libs}/pybind11/embed.h | 0 {libs => third_party/libs}/pybind11/eval.h | 0 .../libs}/pybind11/functional.h | 0 {libs => third_party/libs}/pybind11/gil.h | 0 .../libs}/pybind11/iostream.h | 0 {libs => third_party/libs}/pybind11/numpy.h | 0 .../libs}/pybind11/operators.h | 0 {libs => third_party/libs}/pybind11/options.h | 0 .../libs}/pybind11/pybind11.h | 0 {libs => third_party/libs}/pybind11/pytypes.h | 0 {libs => third_party/libs}/pybind11/stl.h | 0 .../libs}/pybind11/stl/filesystem.h | 0 .../libs}/pybind11/stl_bind.h | 0 {libs => third_party/libs}/rang/rang.hpp | 0 {libs => third_party/libs}/sparsepp/spp.h | 0 .../libs}/sparsepp/spp_config.h | 0 .../libs}/sparsepp/spp_dlalloc.h | 0 .../libs}/sparsepp/spp_memory.h | 0 .../libs}/sparsepp/spp_smartptr.h | 0 .../libs}/sparsepp/spp_stdint.h | 0 .../libs}/sparsepp/spp_timer.h | 0 .../libs}/sparsepp/spp_traits.h | 0 .../libs}/sparsepp/spp_utils.h | 0 .../algorithms/decomposition/barenco.hpp | 0 .../algorithms/decomposition/dt.hpp | 0 .../algorithms/decomposition/gates/ccccx.hpp | 0 .../algorithms/decomposition/gates/cccx.hpp | 0 .../algorithms/decomposition/gates/ccx.hpp | 0 .../algorithms/decomposition/gates/ccz.hpp | 0 .../decomposition/gates/database.hpp | 0 .../algorithms/generic/convert_to.hpp | 0 .../algorithms/generic/remove_marked.hpp | 0 .../tweedledum/algorithms/generic/rewrite.hpp | 0 .../algorithms/generic/shallow_duplicate.hpp | 0 .../tweedledum/algorithms/identify_rz.hpp | 0 .../tweedledum/algorithms/mapping/sat_map.hpp | 0 .../tweedledum/algorithms/mapping/zdd_map.hpp | 0 .../optimization/gate_cancellation.hpp | 0 .../algorithms/optimization/phase_folding.hpp | 0 .../simulation/simulate_classically.hpp | 0 .../algorithms/synthesis/cnot_patel.hpp | 0 .../tweedledum/algorithms/synthesis/dbs.hpp | 0 .../algorithms/synthesis/diagonal_synth.hpp | 0 .../algorithms/synthesis/esop_phase_synth.hpp | 0 .../algorithms/synthesis/gray_synth.hpp | 0 .../algorithms/synthesis/linear_synth.hpp | 0 .../tweedledum/algorithms/synthesis/stg.hpp | 0 .../tweedledum/algorithms/synthesis/tbs.hpp | 0 .../libs}/tweedledum/gates/gate_base.hpp | 0 .../libs}/tweedledum/gates/gate_lib.def | 0 .../libs}/tweedledum/gates/gate_lib.hpp | 0 .../libs}/tweedledum/gates/interface.hpp | 0 .../libs}/tweedledum/gates/io3_gate.hpp | 0 .../libs}/tweedledum/gates/mcmt_gate.hpp | 0 .../libs}/tweedledum/io/dotqc.hpp | 0 .../libs}/tweedledum/io/qasm.hpp | 0 .../libs}/tweedledum/io/quil.hpp | 0 .../libs}/tweedledum/io/read_device.hpp | 0 .../libs}/tweedledum/io/write_dot.hpp | 0 .../libs}/tweedledum/io/write_projectq.hpp | 0 .../libs}/tweedledum/io/write_qpic.hpp | 0 .../libs}/tweedledum/io/write_quirk.hpp | 0 .../libs}/tweedledum/io/write_unicode.hpp | 0 .../tweedledum/networks/detail/storage.hpp | 0 .../libs}/tweedledum/networks/gg_network.hpp | 0 .../libs}/tweedledum/networks/interface.hpp | 0 .../libs}/tweedledum/networks/io_id.hpp | 0 .../libs}/tweedledum/networks/netlist.hpp | 0 .../libs}/tweedledum/traits.hpp | 0 .../libs}/tweedledum/tweedledum.hpp | 0 .../libs}/tweedledum/utils/angle.hpp | 0 .../libs}/tweedledum/utils/bit_matrix_cm.hpp | 0 .../libs}/tweedledum/utils/bit_matrix_rm.hpp | 0 .../libs}/tweedledum/utils/dd/zdd.hpp | 0 .../tweedledum/utils/detail/bit_matrix.hpp | 0 .../libs}/tweedledum/utils/device.hpp | 0 .../libs}/tweedledum/utils/dynamic_bitset.hpp | 0 .../libs}/tweedledum/utils/foreach.hpp | 0 .../libs}/tweedledum/utils/hash.hpp | 0 .../libs}/tweedledum/utils/node_map.hpp | 0 .../libs}/tweedledum/utils/parity_terms.hpp | 0 .../libs}/tweedledum/utils/permute.hpp | 0 .../tweedledum/utils/sat/cardinality.hpp | 0 .../libs}/tweedledum/utils/sat/solver.hpp | 0 .../libs}/tweedledum/utils/sat/types.hpp | 0 .../libs}/tweedledum/utils/stopwatch.hpp | 0 .../libs}/tweedledum/views/depth_view.hpp | 0 .../libs}/tweedledum/views/immutable_view.hpp | 0 .../libs}/tweedledum/views/mapping_view.hpp | 0 .../libs}/tweedledum/views/pathsum_view.hpp | 0 .../libs}/tweedledum/views/stats_view.hpp | 0 {libs => third_party/libs}/zlib/zconf.h | 0 {libs => third_party/libs}/zlib/zlib.h | 0 tools/circ.cpp | 2 +- tools/device_generator.cpp | 2 +- tools/grid_synth.cpp | 2 +- tools/inliner.cpp | 2 +- tools/lattice_surgery.cpp | 2 +- tools/mapper.cpp | 2 +- tools/projectq.cpp | 2 +- tools/qasm_synth.cpp | 2 +- tools/qsharp.cpp | 2 +- tools/quil.cpp | 2 +- tools/resource_estimator.cpp | 2 +- tools/rotation_optimizer.cpp | 2 +- tools/simplifier.cpp | 2 +- 378 files changed, 61 insertions(+), 29 deletions(-) create mode 100644 cmake/staqConfig.cmake.in rename {libs => third_party/libs}/CLI/App.hpp (100%) rename {libs => third_party/libs}/CLI/CLI.hpp (100%) rename {libs => third_party/libs}/CLI/Config.hpp (100%) rename {libs => third_party/libs}/CLI/ConfigFwd.hpp (100%) rename {libs => third_party/libs}/CLI/Error.hpp (100%) rename {libs => third_party/libs}/CLI/Formatter.hpp (100%) rename {libs => third_party/libs}/CLI/FormatterFwd.hpp (100%) rename {libs => third_party/libs}/CLI/Macros.hpp (100%) rename {libs => third_party/libs}/CLI/Option.hpp (100%) rename {libs => third_party/libs}/CLI/Split.hpp (100%) rename {libs => third_party/libs}/CLI/StringTools.hpp (100%) rename {libs => third_party/libs}/CLI/Timer.hpp (100%) rename {libs => third_party/libs}/CLI/TypeTools.hpp (100%) rename {libs => third_party/libs}/CLI/Validators.hpp (100%) rename {libs => third_party/libs}/CLI/Version.hpp (100%) rename {libs => third_party/libs}/CMakeLists.txt (100%) rename {libs => third_party/libs}/caterpillar/details/utils.hpp (100%) rename {libs => third_party/libs}/caterpillar/optimization/optimization_graph.hpp (100%) rename {libs => third_party/libs}/caterpillar/optimization/post_opt_esop.hpp (100%) rename {libs => third_party/libs}/caterpillar/stg_gate.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/lhrs.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/sat.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/satbased_cnotrz.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/stg_to_mcx.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/strategies/action.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/strategies/bennett_mapping_strategy.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/strategies/best_fit_mapping_strategy.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/strategies/eager_mapping_strategy.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/strategies/mapping_strategy.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/strategies/pebbling_mapping_strategy.hpp (100%) rename {libs => third_party/libs}/caterpillar/synthesis/strategies/xag_mapping_strategy.hpp (100%) rename {libs => third_party/libs}/caterpillar/verification/circuit_to_logic_network.hpp (100%) rename {libs => third_party/libs}/easy/cli/commands/cover.hpp (100%) rename {libs => third_party/libs}/easy/cli/commands/ec.hpp (100%) rename {libs => third_party/libs}/easy/cli/commands/exorlink.hpp (100%) rename {libs => third_party/libs}/easy/cli/commands/function.hpp (100%) rename {libs => third_party/libs}/easy/cli/commands/read_fns.hpp (100%) rename {libs => third_party/libs}/easy/cli/commands/sort.hpp (100%) rename {libs => third_party/libs}/easy/cli/commands/synth.hpp (100%) rename {libs => third_party/libs}/easy/cli/stores/esop.hpp (100%) rename {libs => third_party/libs}/easy/cli/stores/function.hpp (100%) rename {libs => third_party/libs}/easy/easy.hpp (100%) rename {libs => third_party/libs}/easy/esop/combine.hpp (100%) rename {libs => third_party/libs}/easy/esop/constructors.hpp (100%) rename {libs => third_party/libs}/easy/esop/cost.hpp (100%) rename {libs => third_party/libs}/easy/esop/cube_manipulators.hpp (100%) rename {libs => third_party/libs}/easy/esop/cube_utils.hpp (100%) rename {libs => third_party/libs}/easy/esop/esop.hpp (100%) rename {libs => third_party/libs}/easy/esop/esop_from_pkrm.hpp (100%) rename {libs => third_party/libs}/easy/esop/esop_from_pprm.hpp (100%) rename {libs => third_party/libs}/easy/esop/exact_synthesis.hpp (100%) rename {libs => third_party/libs}/easy/esop/exorlink.hpp (100%) rename {libs => third_party/libs}/easy/esop/exorlink4.def (100%) rename {libs => third_party/libs}/easy/esop/exorlink5.def (100%) rename {libs => third_party/libs}/easy/esop/exorlink6.def (100%) rename {libs => third_party/libs}/easy/esop/helliwell.hpp (100%) rename {libs => third_party/libs}/easy/esop/synthesis.hpp (100%) rename {libs => third_party/libs}/easy/io/read_esop.hpp (100%) rename {libs => third_party/libs}/easy/io/write_esop.hpp (100%) rename {libs => third_party/libs}/easy/sat/cnf_writer.hpp (100%) rename {libs => third_party/libs}/easy/sat/constraints.hpp (100%) rename {libs => third_party/libs}/easy/sat/gauss.hpp (100%) rename {libs => third_party/libs}/easy/sat/sat_solver.hpp (100%) rename {libs => third_party/libs}/easy/sat/xor_clauses_to_cnf.hpp (100%) rename {libs => third_party/libs}/easy/sat2/cardinality.hpp (100%) rename {libs => third_party/libs}/easy/sat2/cnf_from_xcnf.hpp (100%) rename {libs => third_party/libs}/easy/sat2/core_utils.hpp (100%) rename {libs => third_party/libs}/easy/sat2/maxsat.hpp (100%) rename {libs => third_party/libs}/easy/sat2/sat_solver.hpp (100%) rename {libs => third_party/libs}/easy/utils/dynamic_bitset.hpp (100%) rename {libs => third_party/libs}/easy/utils/stopwatch.hpp (100%) rename {libs => third_party/libs}/easy/utils/string_utils.hpp (100%) rename {libs => third_party/libs}/ez/direct_iterator.hpp (100%) rename {libs => third_party/libs}/fmt/chrono.h (100%) rename {libs => third_party/libs}/fmt/color.h (100%) rename {libs => third_party/libs}/fmt/container.h (100%) rename {libs => third_party/libs}/fmt/core.h (100%) rename {libs => third_party/libs}/fmt/format-inl.h (100%) rename {libs => third_party/libs}/fmt/format.cc (100%) rename {libs => third_party/libs}/fmt/format.h (100%) rename {libs => third_party/libs}/fmt/locale.h (100%) rename {libs => third_party/libs}/fmt/ostream.cc (100%) rename {libs => third_party/libs}/fmt/ostream.h (100%) rename {libs => third_party/libs}/fmt/posix.cc (100%) rename {libs => third_party/libs}/fmt/posix.h (100%) rename {libs => third_party/libs}/fmt/printf.cc (100%) rename {libs => third_party/libs}/fmt/printf.h (100%) rename {libs => third_party/libs}/fmt/ranges.h (100%) rename {libs => third_party/libs}/fmt/string.h (100%) rename {libs => third_party/libs}/fmt/time.h (100%) rename {libs => third_party/libs}/glucose/glucose.hpp (100%) rename {libs => third_party/libs}/kitty/affine.hpp (100%) rename {libs => third_party/libs}/kitty/algorithm.hpp (100%) rename {libs => third_party/libs}/kitty/bit_operations.hpp (100%) rename {libs => third_party/libs}/kitty/cnf.hpp (100%) rename {libs => third_party/libs}/kitty/constructors.hpp (100%) rename {libs => third_party/libs}/kitty/cube.hpp (100%) rename {libs => third_party/libs}/kitty/decomposition.hpp (100%) rename {libs => third_party/libs}/kitty/detail/constants.hpp (100%) rename {libs => third_party/libs}/kitty/detail/linear_constants.hpp (100%) rename {libs => third_party/libs}/kitty/detail/mscfix.hpp (100%) rename {libs => third_party/libs}/kitty/detail/utils.hpp (100%) rename {libs => third_party/libs}/kitty/dynamic_truth_table.hpp (100%) rename {libs => third_party/libs}/kitty/enumeration.hpp (100%) rename {libs => third_party/libs}/kitty/esop.hpp (100%) rename {libs => third_party/libs}/kitty/hash.hpp (100%) rename {libs => third_party/libs}/kitty/implicant.hpp (100%) rename {libs => third_party/libs}/kitty/isop.hpp (100%) rename {libs => third_party/libs}/kitty/kitty.hpp (100%) rename {libs => third_party/libs}/kitty/npn.hpp (100%) rename {libs => third_party/libs}/kitty/operations.hpp (100%) rename {libs => third_party/libs}/kitty/operators.hpp (100%) rename {libs => third_party/libs}/kitty/permutation.hpp (100%) rename {libs => third_party/libs}/kitty/print.hpp (100%) rename {libs => third_party/libs}/kitty/properties.hpp (100%) rename {libs => third_party/libs}/kitty/spectral.hpp (100%) rename {libs => third_party/libs}/kitty/static_truth_table.hpp (100%) rename {libs => third_party/libs}/kitty/traits.hpp (100%) rename {libs => third_party/libs}/lorina/aiger.hpp (100%) rename {libs => third_party/libs}/lorina/bench.hpp (100%) rename {libs => third_party/libs}/lorina/blif.hpp (100%) rename {libs => third_party/libs}/lorina/common.hpp (100%) rename {libs => third_party/libs}/lorina/detail/tokenizer.hpp (100%) rename {libs => third_party/libs}/lorina/detail/utils.hpp (100%) rename {libs => third_party/libs}/lorina/diagnostics.hpp (100%) rename {libs => third_party/libs}/lorina/lorina.hpp (100%) rename {libs => third_party/libs}/lorina/pla.hpp (100%) rename {libs => third_party/libs}/lorina/verilog.hpp (100%) rename {libs => third_party/libs}/lorina/verilog_regex.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/aig_resub.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/akers_synthesis.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/cell_window.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/cleanup.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/cnf.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/collapse_mapped.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/cut_enumeration.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/cut_enumeration/cnf_cut.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/cut_enumeration/gia_cut.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/cut_enumeration/mf_cut.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/cut_enumeration/spectr_cut.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/cut_rewriting.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/detail/mffc_utils.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/dont_cares.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/dsd_decomposition.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/equivalence_checking.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/gates_to_nodes.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/lut_mapping.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/mig_algebraic_rewriting.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/mig_resub.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/miter.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/node_resynthesis.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/node_resynthesis/akers.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/node_resynthesis/direct.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/node_resynthesis/exact.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/node_resynthesis/mig_npn.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/node_resynthesis/xag_minmc.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/node_resynthesis/xag_npn.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/node_resynthesis/xmg_npn.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/reconv_cut.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/reconv_cut2.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/refactoring.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/resubstitution.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/satlut_mapping.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/simulation.hpp (100%) rename {libs => third_party/libs}/mockturtle/algorithms/xmg_algebraic_rewriting.hpp (100%) rename {libs => third_party/libs}/mockturtle/generators/arithmetic.hpp (100%) rename {libs => third_party/libs}/mockturtle/generators/control.hpp (100%) rename {libs => third_party/libs}/mockturtle/generators/modular_arithmetic.hpp (100%) rename {libs => third_party/libs}/mockturtle/generators/random_logic_generator.hpp (100%) rename {libs => third_party/libs}/mockturtle/generators/sorting.hpp (100%) rename {libs => third_party/libs}/mockturtle/interface.hpp (100%) rename {libs => third_party/libs}/mockturtle/io/aiger_reader.hpp (100%) rename {libs => third_party/libs}/mockturtle/io/bench_reader.hpp (100%) rename {libs => third_party/libs}/mockturtle/io/pla_reader.hpp (100%) rename {libs => third_party/libs}/mockturtle/io/verilog_reader.hpp (100%) rename {libs => third_party/libs}/mockturtle/io/write_bench.hpp (100%) rename {libs => third_party/libs}/mockturtle/io/write_dimacs.hpp (100%) rename {libs => third_party/libs}/mockturtle/io/write_dot.hpp (100%) rename {libs => third_party/libs}/mockturtle/io/write_verilog.hpp (100%) rename {libs => third_party/libs}/mockturtle/mockturtle.hpp (100%) rename {libs => third_party/libs}/mockturtle/networks/aig.hpp (100%) rename {libs => third_party/libs}/mockturtle/networks/detail/foreach.hpp (100%) rename {libs => third_party/libs}/mockturtle/networks/events.hpp (100%) rename {libs => third_party/libs}/mockturtle/networks/klut.hpp (100%) rename {libs => third_party/libs}/mockturtle/networks/mig.hpp (100%) rename {libs => third_party/libs}/mockturtle/networks/storage.hpp (100%) rename {libs => third_party/libs}/mockturtle/networks/xag.hpp (100%) rename {libs => third_party/libs}/mockturtle/networks/xmg.hpp (100%) rename {libs => third_party/libs}/mockturtle/properties/migcost.hpp (100%) rename {libs => third_party/libs}/mockturtle/traits.hpp (100%) rename {libs => third_party/libs}/mockturtle/utils/algorithm.hpp (100%) rename {libs => third_party/libs}/mockturtle/utils/cuts.hpp (100%) rename {libs => third_party/libs}/mockturtle/utils/mixed_radix.hpp (100%) rename {libs => third_party/libs}/mockturtle/utils/node_map.hpp (100%) rename {libs => third_party/libs}/mockturtle/utils/progress_bar.hpp (100%) rename {libs => third_party/libs}/mockturtle/utils/stopwatch.hpp (100%) rename {libs => third_party/libs}/mockturtle/utils/string_utils.hpp (100%) rename {libs => third_party/libs}/mockturtle/utils/truth_table_cache.hpp (100%) rename {libs => third_party/libs}/mockturtle/views/cut_view.hpp (100%) rename {libs => third_party/libs}/mockturtle/views/depth_view.hpp (100%) rename {libs => third_party/libs}/mockturtle/views/fanout_view.hpp (100%) rename {libs => third_party/libs}/mockturtle/views/fanout_view2.hpp (100%) rename {libs => third_party/libs}/mockturtle/views/immutable_view.hpp (100%) rename {libs => third_party/libs}/mockturtle/views/mapping_view.hpp (100%) rename {libs => third_party/libs}/mockturtle/views/mffc_view.hpp (100%) rename {libs => third_party/libs}/mockturtle/views/topo_view.hpp (100%) rename {libs => third_party/libs}/mockturtle/views/window_view.hpp (100%) rename {libs => third_party/libs}/nlohmann/adl_serializer.hpp (100%) rename {libs => third_party/libs}/nlohmann/byte_container_with_subtype.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/conversions/from_json.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/conversions/to_chars.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/conversions/to_json.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/exceptions.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/hash.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/input/binary_reader.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/input/input_adapters.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/input/json_sax.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/input/lexer.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/input/parser.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/input/position_t.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/iterators/internal_iterator.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/iterators/iter_impl.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/iterators/iteration_proxy.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/iterators/iterator_traits.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/iterators/json_reverse_iterator.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/iterators/primitive_iterator.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/json_pointer.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/json_ref.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/macro_scope.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/macro_unscope.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/meta/cpp_future.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/meta/detected.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/meta/identity_tag.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/meta/is_sax.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/meta/type_traits.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/meta/void_t.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/output/binary_writer.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/output/output_adapters.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/output/serializer.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/string_escape.hpp (100%) rename {libs => third_party/libs}/nlohmann/detail/value_t.hpp (100%) rename {libs => third_party/libs}/nlohmann/json.hpp (100%) rename {libs => third_party/libs}/nlohmann/json_fwd.hpp (100%) rename {libs => third_party/libs}/nlohmann/ordered_map.hpp (100%) rename {libs => third_party/libs}/nlohmann/thirdparty/hedley/hedley.hpp (100%) rename {libs => third_party/libs}/nlohmann/thirdparty/hedley/hedley_undef.hpp (100%) rename {libs => third_party/libs}/pthreadwin32/pthread.h (100%) rename {libs => third_party/libs}/pthreadwin32/sched.h (100%) rename {libs => third_party/libs}/pthreadwin32/semaphore.h (100%) rename {libs => third_party/libs}/pybind11/attr.h (100%) rename {libs => third_party/libs}/pybind11/buffer_info.h (100%) rename {libs => third_party/libs}/pybind11/cast.h (100%) rename {libs => third_party/libs}/pybind11/chrono.h (100%) rename {libs => third_party/libs}/pybind11/common.h (100%) rename {libs => third_party/libs}/pybind11/complex.h (100%) rename {libs => third_party/libs}/pybind11/detail/class.h (100%) rename {libs => third_party/libs}/pybind11/detail/common.h (100%) rename {libs => third_party/libs}/pybind11/detail/descr.h (100%) rename {libs => third_party/libs}/pybind11/detail/init.h (100%) rename {libs => third_party/libs}/pybind11/detail/internals.h (100%) rename {libs => third_party/libs}/pybind11/detail/type_caster_base.h (100%) rename {libs => third_party/libs}/pybind11/detail/typeid.h (100%) rename {libs => third_party/libs}/pybind11/eigen.h (100%) rename {libs => third_party/libs}/pybind11/eigen/matrix.h (100%) rename {libs => third_party/libs}/pybind11/eigen/tensor.h (100%) rename {libs => third_party/libs}/pybind11/embed.h (100%) rename {libs => third_party/libs}/pybind11/eval.h (100%) rename {libs => third_party/libs}/pybind11/functional.h (100%) rename {libs => third_party/libs}/pybind11/gil.h (100%) rename {libs => third_party/libs}/pybind11/iostream.h (100%) rename {libs => third_party/libs}/pybind11/numpy.h (100%) rename {libs => third_party/libs}/pybind11/operators.h (100%) rename {libs => third_party/libs}/pybind11/options.h (100%) rename {libs => third_party/libs}/pybind11/pybind11.h (100%) rename {libs => third_party/libs}/pybind11/pytypes.h (100%) rename {libs => third_party/libs}/pybind11/stl.h (100%) rename {libs => third_party/libs}/pybind11/stl/filesystem.h (100%) rename {libs => third_party/libs}/pybind11/stl_bind.h (100%) rename {libs => third_party/libs}/rang/rang.hpp (100%) rename {libs => third_party/libs}/sparsepp/spp.h (100%) rename {libs => third_party/libs}/sparsepp/spp_config.h (100%) rename {libs => third_party/libs}/sparsepp/spp_dlalloc.h (100%) rename {libs => third_party/libs}/sparsepp/spp_memory.h (100%) rename {libs => third_party/libs}/sparsepp/spp_smartptr.h (100%) rename {libs => third_party/libs}/sparsepp/spp_stdint.h (100%) rename {libs => third_party/libs}/sparsepp/spp_timer.h (100%) rename {libs => third_party/libs}/sparsepp/spp_traits.h (100%) rename {libs => third_party/libs}/sparsepp/spp_utils.h (100%) rename {libs => third_party/libs}/tweedledum/algorithms/decomposition/barenco.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/decomposition/dt.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/decomposition/gates/ccccx.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/decomposition/gates/cccx.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/decomposition/gates/ccx.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/decomposition/gates/ccz.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/decomposition/gates/database.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/generic/convert_to.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/generic/remove_marked.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/generic/rewrite.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/generic/shallow_duplicate.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/identify_rz.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/mapping/sat_map.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/mapping/zdd_map.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/optimization/gate_cancellation.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/optimization/phase_folding.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/simulation/simulate_classically.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/synthesis/cnot_patel.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/synthesis/dbs.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/synthesis/diagonal_synth.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/synthesis/esop_phase_synth.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/synthesis/gray_synth.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/synthesis/linear_synth.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/synthesis/stg.hpp (100%) rename {libs => third_party/libs}/tweedledum/algorithms/synthesis/tbs.hpp (100%) rename {libs => third_party/libs}/tweedledum/gates/gate_base.hpp (100%) rename {libs => third_party/libs}/tweedledum/gates/gate_lib.def (100%) rename {libs => third_party/libs}/tweedledum/gates/gate_lib.hpp (100%) rename {libs => third_party/libs}/tweedledum/gates/interface.hpp (100%) rename {libs => third_party/libs}/tweedledum/gates/io3_gate.hpp (100%) rename {libs => third_party/libs}/tweedledum/gates/mcmt_gate.hpp (100%) rename {libs => third_party/libs}/tweedledum/io/dotqc.hpp (100%) rename {libs => third_party/libs}/tweedledum/io/qasm.hpp (100%) rename {libs => third_party/libs}/tweedledum/io/quil.hpp (100%) rename {libs => third_party/libs}/tweedledum/io/read_device.hpp (100%) rename {libs => third_party/libs}/tweedledum/io/write_dot.hpp (100%) rename {libs => third_party/libs}/tweedledum/io/write_projectq.hpp (100%) rename {libs => third_party/libs}/tweedledum/io/write_qpic.hpp (100%) rename {libs => third_party/libs}/tweedledum/io/write_quirk.hpp (100%) rename {libs => third_party/libs}/tweedledum/io/write_unicode.hpp (100%) rename {libs => third_party/libs}/tweedledum/networks/detail/storage.hpp (100%) rename {libs => third_party/libs}/tweedledum/networks/gg_network.hpp (100%) rename {libs => third_party/libs}/tweedledum/networks/interface.hpp (100%) rename {libs => third_party/libs}/tweedledum/networks/io_id.hpp (100%) rename {libs => third_party/libs}/tweedledum/networks/netlist.hpp (100%) rename {libs => third_party/libs}/tweedledum/traits.hpp (100%) rename {libs => third_party/libs}/tweedledum/tweedledum.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/angle.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/bit_matrix_cm.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/bit_matrix_rm.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/dd/zdd.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/detail/bit_matrix.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/device.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/dynamic_bitset.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/foreach.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/hash.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/node_map.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/parity_terms.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/permute.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/sat/cardinality.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/sat/solver.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/sat/types.hpp (100%) rename {libs => third_party/libs}/tweedledum/utils/stopwatch.hpp (100%) rename {libs => third_party/libs}/tweedledum/views/depth_view.hpp (100%) rename {libs => third_party/libs}/tweedledum/views/immutable_view.hpp (100%) rename {libs => third_party/libs}/tweedledum/views/mapping_view.hpp (100%) rename {libs => third_party/libs}/tweedledum/views/pathsum_view.hpp (100%) rename {libs => third_party/libs}/tweedledum/views/stats_view.hpp (100%) rename {libs => third_party/libs}/zlib/zconf.h (100%) rename {libs => third_party/libs}/zlib/zlib.h (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index b6cf328a..1413a9ec 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,7 +19,7 @@ add_compile_definitions(PROJECT_ROOT_DIR="${PROJECT_SOURCE_DIR}") #### Force clang to use libc++ if (${CMAKE_CXX_COMPILER_ID} MATCHES "Clang") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++") + add_compile_options("-stdlib=libc++") endif () #### Windows issues with Microsoft Visual Studio @@ -38,15 +38,21 @@ if (MINGW OR CYGWIN) endif () #### Libs -include_directories(SYSTEM libs) +include_directories(SYSTEM third_party/libs) #### staq headers add_library(libstaq INTERFACE) target_include_directories(libstaq INTERFACE - $) + $ + $) #### qasmtools library target_include_directories(libstaq INTERFACE - $) + $ + $) +#### 3rd party libs +target_include_directories(libstaq INTERFACE + $ + $) #### Enable OpenQASM 2.0 Specs option(USE_OPENQASM2_SPECS "Use OpenQASM 2.0 standard instead of Qiskit gate specifications" OFF) @@ -83,9 +89,23 @@ if (NOT CMAKE_BUILD_TYPE) FORCE) endif () -#### Installation +#### Installation (binaries) install(TARGETS ${COMPILER} DESTINATION ${CMAKE_INSTALL_BINDIR}) +#### Installation (source) +set(STAQ_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME}") +install(DIRECTORY include/ DESTINATION ${STAQ_INSTALL_DIR}) +install(DIRECTORY qasmtools/include/ DESTINATION ${STAQ_INSTALL_DIR}) +install(DIRECTORY third_party/libs/ DESTINATION ${STAQ_INSTALL_DIR}/libs) +install(TARGETS libstaq EXPORT staq_targets) +install(EXPORT staq_targets DESTINATION "lib/cmake/${PROJECT_NAME}") +include(CMakePackageConfigHelpers) +configure_package_config_file( + "cmake/staqConfig.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/staqConfig.cmake" + INSTALL_DESTINATION "lib/cmake/${PROJECT_NAME}" +) +install(FILES "${CMAKE_CURRENT_BINARY_DIR}/staqConfig.cmake" DESTINATION "lib/cmake/${PROJECT_NAME}") + #### Uninstall #### https://gitlab.kitware.com/cmake/community/-/wikis/FAQ#can-i-do-make-uninstall-with-cmake #### UNIX/Linux: sudo cmake --build build --target uninstall @@ -98,6 +118,8 @@ if (NOT TARGET uninstall) if (NOT MSVC) add_custom_target(uninstall COMMAND ${CMAKE_COMMAND} -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" + COMMAND ${CMAKE_COMMAND} -E remove_directory "${CMAKE_INSTALL_PREFIX}/lib/cmake/${PROJECT_NAME}" + COMMAND ${CMAKE_COMMAND} -E remove_directory "${STAQ_INSTALL_DIR}" ) else () add_custom_target(uninstall diff --git a/cmake/staqConfig.cmake.in b/cmake/staqConfig.cmake.in new file mode 100644 index 00000000..d8723cbe --- /dev/null +++ b/cmake/staqConfig.cmake.in @@ -0,0 +1,4 @@ +@PACKAGE_INIT@ + +include("${CMAKE_CURRENT_LIST_DIR}/staq_targets.cmake") +message(STATUS "Found staq in @STAQ_INSTALL_DIR@") diff --git a/cmake/staq_uninstall.cmake.in b/cmake/staq_uninstall.cmake.in index 032aefbd..b1cdeb8b 100644 --- a/cmake/staq_uninstall.cmake.in +++ b/cmake/staq_uninstall.cmake.in @@ -20,6 +20,9 @@ foreach(file ${files}) endif() endforeach() -if("@MSVC@") +if(NOT "@MSVC@") + message(STATUS "Removing @CMAKE_INSTALL_PREFIX@/lib/cmake/@PROJECT_NAME@") + message(STATUS "Removing @STAQ_INSTALL_DIR@") +else() message(STATUS "Removing @CMAKE_INSTALL_PREFIX@") endif() diff --git a/include/mapping/device.hpp b/include/mapping/device.hpp index 7b90f647..f6e8dfa7 100644 --- a/include/mapping/device.hpp +++ b/include/mapping/device.hpp @@ -38,13 +38,14 @@ #include #include #include -#include #include #include #include #include #include +#include + #include "qasmtools/ast/var.hpp" namespace staq { diff --git a/include/output/lattice_surgery.hpp b/include/output/lattice_surgery.hpp index 0517de50..f7ef6107 100644 --- a/include/output/lattice_surgery.hpp +++ b/include/output/lattice_surgery.hpp @@ -35,10 +35,11 @@ #include #include #include -#include #include #include +#include + #include "qasmtools/ast/ast.hpp" #include "qasmtools/utils/angle.hpp" #include "transformations/desugar.hpp" diff --git a/include/synthesis/logic_synthesis.hpp b/include/synthesis/logic_synthesis.hpp index caaa00d4..4e2304b5 100644 --- a/include/synthesis/logic_synthesis.hpp +++ b/include/synthesis/logic_synthesis.hpp @@ -32,18 +32,18 @@ #ifndef SYNTHESIS_LOGICSYNTHESIS_HPP_ #define SYNTHESIS_LOGICSYNTHESIS_HPP_ -#define FMT_HEADER_ONLY = true - -#include -#include -#include -#include -#include -#include +#define FMT_HEADER_ONLY true #include #include +#include +#include +#include +#include +#include +#include + #include "qasmtools/ast/stmt.hpp" #include "qasmtools/parser/position.hpp" #include "qasmtools/utils/angle.hpp" diff --git a/pystaq/staq_wrapper.cpp b/pystaq/staq_wrapper.cpp index 0fec138d..6718143b 100644 --- a/pystaq/staq_wrapper.cpp +++ b/pystaq/staq_wrapper.cpp @@ -30,6 +30,7 @@ #include #include + #include #include "qasmtools/parser/parser.hpp" diff --git a/libs/CLI/App.hpp b/third_party/libs/CLI/App.hpp similarity index 100% rename from libs/CLI/App.hpp rename to third_party/libs/CLI/App.hpp diff --git a/libs/CLI/CLI.hpp b/third_party/libs/CLI/CLI.hpp similarity index 100% rename from libs/CLI/CLI.hpp rename to third_party/libs/CLI/CLI.hpp diff --git a/libs/CLI/Config.hpp b/third_party/libs/CLI/Config.hpp similarity index 100% rename from libs/CLI/Config.hpp rename to third_party/libs/CLI/Config.hpp diff --git a/libs/CLI/ConfigFwd.hpp b/third_party/libs/CLI/ConfigFwd.hpp similarity index 100% rename from libs/CLI/ConfigFwd.hpp rename to third_party/libs/CLI/ConfigFwd.hpp diff --git a/libs/CLI/Error.hpp b/third_party/libs/CLI/Error.hpp similarity index 100% rename from libs/CLI/Error.hpp rename to third_party/libs/CLI/Error.hpp diff --git a/libs/CLI/Formatter.hpp b/third_party/libs/CLI/Formatter.hpp similarity index 100% rename from libs/CLI/Formatter.hpp rename to third_party/libs/CLI/Formatter.hpp diff --git a/libs/CLI/FormatterFwd.hpp b/third_party/libs/CLI/FormatterFwd.hpp similarity index 100% rename from libs/CLI/FormatterFwd.hpp rename to third_party/libs/CLI/FormatterFwd.hpp diff --git a/libs/CLI/Macros.hpp b/third_party/libs/CLI/Macros.hpp similarity index 100% rename from libs/CLI/Macros.hpp rename to third_party/libs/CLI/Macros.hpp diff --git a/libs/CLI/Option.hpp b/third_party/libs/CLI/Option.hpp similarity index 100% rename from libs/CLI/Option.hpp rename to third_party/libs/CLI/Option.hpp diff --git a/libs/CLI/Split.hpp b/third_party/libs/CLI/Split.hpp similarity index 100% rename from libs/CLI/Split.hpp rename to third_party/libs/CLI/Split.hpp diff --git a/libs/CLI/StringTools.hpp b/third_party/libs/CLI/StringTools.hpp similarity index 100% rename from libs/CLI/StringTools.hpp rename to third_party/libs/CLI/StringTools.hpp diff --git a/libs/CLI/Timer.hpp b/third_party/libs/CLI/Timer.hpp similarity index 100% rename from libs/CLI/Timer.hpp rename to third_party/libs/CLI/Timer.hpp diff --git a/libs/CLI/TypeTools.hpp b/third_party/libs/CLI/TypeTools.hpp similarity index 100% rename from libs/CLI/TypeTools.hpp rename to third_party/libs/CLI/TypeTools.hpp diff --git a/libs/CLI/Validators.hpp b/third_party/libs/CLI/Validators.hpp similarity index 100% rename from libs/CLI/Validators.hpp rename to third_party/libs/CLI/Validators.hpp diff --git a/libs/CLI/Version.hpp b/third_party/libs/CLI/Version.hpp similarity index 100% rename from libs/CLI/Version.hpp rename to third_party/libs/CLI/Version.hpp diff --git a/libs/CMakeLists.txt b/third_party/libs/CMakeLists.txt similarity index 100% rename from libs/CMakeLists.txt rename to third_party/libs/CMakeLists.txt diff --git a/libs/caterpillar/details/utils.hpp b/third_party/libs/caterpillar/details/utils.hpp similarity index 100% rename from libs/caterpillar/details/utils.hpp rename to third_party/libs/caterpillar/details/utils.hpp diff --git a/libs/caterpillar/optimization/optimization_graph.hpp b/third_party/libs/caterpillar/optimization/optimization_graph.hpp similarity index 100% rename from libs/caterpillar/optimization/optimization_graph.hpp rename to third_party/libs/caterpillar/optimization/optimization_graph.hpp diff --git a/libs/caterpillar/optimization/post_opt_esop.hpp b/third_party/libs/caterpillar/optimization/post_opt_esop.hpp similarity index 100% rename from libs/caterpillar/optimization/post_opt_esop.hpp rename to third_party/libs/caterpillar/optimization/post_opt_esop.hpp diff --git a/libs/caterpillar/stg_gate.hpp b/third_party/libs/caterpillar/stg_gate.hpp similarity index 100% rename from libs/caterpillar/stg_gate.hpp rename to third_party/libs/caterpillar/stg_gate.hpp diff --git a/libs/caterpillar/synthesis/lhrs.hpp b/third_party/libs/caterpillar/synthesis/lhrs.hpp similarity index 100% rename from libs/caterpillar/synthesis/lhrs.hpp rename to third_party/libs/caterpillar/synthesis/lhrs.hpp diff --git a/libs/caterpillar/synthesis/sat.hpp b/third_party/libs/caterpillar/synthesis/sat.hpp similarity index 100% rename from libs/caterpillar/synthesis/sat.hpp rename to third_party/libs/caterpillar/synthesis/sat.hpp diff --git a/libs/caterpillar/synthesis/satbased_cnotrz.hpp b/third_party/libs/caterpillar/synthesis/satbased_cnotrz.hpp similarity index 100% rename from libs/caterpillar/synthesis/satbased_cnotrz.hpp rename to third_party/libs/caterpillar/synthesis/satbased_cnotrz.hpp diff --git a/libs/caterpillar/synthesis/stg_to_mcx.hpp b/third_party/libs/caterpillar/synthesis/stg_to_mcx.hpp similarity index 100% rename from libs/caterpillar/synthesis/stg_to_mcx.hpp rename to third_party/libs/caterpillar/synthesis/stg_to_mcx.hpp diff --git a/libs/caterpillar/synthesis/strategies/action.hpp b/third_party/libs/caterpillar/synthesis/strategies/action.hpp similarity index 100% rename from libs/caterpillar/synthesis/strategies/action.hpp rename to third_party/libs/caterpillar/synthesis/strategies/action.hpp diff --git a/libs/caterpillar/synthesis/strategies/bennett_mapping_strategy.hpp b/third_party/libs/caterpillar/synthesis/strategies/bennett_mapping_strategy.hpp similarity index 100% rename from libs/caterpillar/synthesis/strategies/bennett_mapping_strategy.hpp rename to third_party/libs/caterpillar/synthesis/strategies/bennett_mapping_strategy.hpp diff --git a/libs/caterpillar/synthesis/strategies/best_fit_mapping_strategy.hpp b/third_party/libs/caterpillar/synthesis/strategies/best_fit_mapping_strategy.hpp similarity index 100% rename from libs/caterpillar/synthesis/strategies/best_fit_mapping_strategy.hpp rename to third_party/libs/caterpillar/synthesis/strategies/best_fit_mapping_strategy.hpp diff --git a/libs/caterpillar/synthesis/strategies/eager_mapping_strategy.hpp b/third_party/libs/caterpillar/synthesis/strategies/eager_mapping_strategy.hpp similarity index 100% rename from libs/caterpillar/synthesis/strategies/eager_mapping_strategy.hpp rename to third_party/libs/caterpillar/synthesis/strategies/eager_mapping_strategy.hpp diff --git a/libs/caterpillar/synthesis/strategies/mapping_strategy.hpp b/third_party/libs/caterpillar/synthesis/strategies/mapping_strategy.hpp similarity index 100% rename from libs/caterpillar/synthesis/strategies/mapping_strategy.hpp rename to third_party/libs/caterpillar/synthesis/strategies/mapping_strategy.hpp diff --git a/libs/caterpillar/synthesis/strategies/pebbling_mapping_strategy.hpp b/third_party/libs/caterpillar/synthesis/strategies/pebbling_mapping_strategy.hpp similarity index 100% rename from libs/caterpillar/synthesis/strategies/pebbling_mapping_strategy.hpp rename to third_party/libs/caterpillar/synthesis/strategies/pebbling_mapping_strategy.hpp diff --git a/libs/caterpillar/synthesis/strategies/xag_mapping_strategy.hpp b/third_party/libs/caterpillar/synthesis/strategies/xag_mapping_strategy.hpp similarity index 100% rename from libs/caterpillar/synthesis/strategies/xag_mapping_strategy.hpp rename to third_party/libs/caterpillar/synthesis/strategies/xag_mapping_strategy.hpp diff --git a/libs/caterpillar/verification/circuit_to_logic_network.hpp b/third_party/libs/caterpillar/verification/circuit_to_logic_network.hpp similarity index 100% rename from libs/caterpillar/verification/circuit_to_logic_network.hpp rename to third_party/libs/caterpillar/verification/circuit_to_logic_network.hpp diff --git a/libs/easy/cli/commands/cover.hpp b/third_party/libs/easy/cli/commands/cover.hpp similarity index 100% rename from libs/easy/cli/commands/cover.hpp rename to third_party/libs/easy/cli/commands/cover.hpp diff --git a/libs/easy/cli/commands/ec.hpp b/third_party/libs/easy/cli/commands/ec.hpp similarity index 100% rename from libs/easy/cli/commands/ec.hpp rename to third_party/libs/easy/cli/commands/ec.hpp diff --git a/libs/easy/cli/commands/exorlink.hpp b/third_party/libs/easy/cli/commands/exorlink.hpp similarity index 100% rename from libs/easy/cli/commands/exorlink.hpp rename to third_party/libs/easy/cli/commands/exorlink.hpp diff --git a/libs/easy/cli/commands/function.hpp b/third_party/libs/easy/cli/commands/function.hpp similarity index 100% rename from libs/easy/cli/commands/function.hpp rename to third_party/libs/easy/cli/commands/function.hpp diff --git a/libs/easy/cli/commands/read_fns.hpp b/third_party/libs/easy/cli/commands/read_fns.hpp similarity index 100% rename from libs/easy/cli/commands/read_fns.hpp rename to third_party/libs/easy/cli/commands/read_fns.hpp diff --git a/libs/easy/cli/commands/sort.hpp b/third_party/libs/easy/cli/commands/sort.hpp similarity index 100% rename from libs/easy/cli/commands/sort.hpp rename to third_party/libs/easy/cli/commands/sort.hpp diff --git a/libs/easy/cli/commands/synth.hpp b/third_party/libs/easy/cli/commands/synth.hpp similarity index 100% rename from libs/easy/cli/commands/synth.hpp rename to third_party/libs/easy/cli/commands/synth.hpp diff --git a/libs/easy/cli/stores/esop.hpp b/third_party/libs/easy/cli/stores/esop.hpp similarity index 100% rename from libs/easy/cli/stores/esop.hpp rename to third_party/libs/easy/cli/stores/esop.hpp diff --git a/libs/easy/cli/stores/function.hpp b/third_party/libs/easy/cli/stores/function.hpp similarity index 100% rename from libs/easy/cli/stores/function.hpp rename to third_party/libs/easy/cli/stores/function.hpp diff --git a/libs/easy/easy.hpp b/third_party/libs/easy/easy.hpp similarity index 100% rename from libs/easy/easy.hpp rename to third_party/libs/easy/easy.hpp diff --git a/libs/easy/esop/combine.hpp b/third_party/libs/easy/esop/combine.hpp similarity index 100% rename from libs/easy/esop/combine.hpp rename to third_party/libs/easy/esop/combine.hpp diff --git a/libs/easy/esop/constructors.hpp b/third_party/libs/easy/esop/constructors.hpp similarity index 100% rename from libs/easy/esop/constructors.hpp rename to third_party/libs/easy/esop/constructors.hpp diff --git a/libs/easy/esop/cost.hpp b/third_party/libs/easy/esop/cost.hpp similarity index 100% rename from libs/easy/esop/cost.hpp rename to third_party/libs/easy/esop/cost.hpp diff --git a/libs/easy/esop/cube_manipulators.hpp b/third_party/libs/easy/esop/cube_manipulators.hpp similarity index 100% rename from libs/easy/esop/cube_manipulators.hpp rename to third_party/libs/easy/esop/cube_manipulators.hpp diff --git a/libs/easy/esop/cube_utils.hpp b/third_party/libs/easy/esop/cube_utils.hpp similarity index 100% rename from libs/easy/esop/cube_utils.hpp rename to third_party/libs/easy/esop/cube_utils.hpp diff --git a/libs/easy/esop/esop.hpp b/third_party/libs/easy/esop/esop.hpp similarity index 100% rename from libs/easy/esop/esop.hpp rename to third_party/libs/easy/esop/esop.hpp diff --git a/libs/easy/esop/esop_from_pkrm.hpp b/third_party/libs/easy/esop/esop_from_pkrm.hpp similarity index 100% rename from libs/easy/esop/esop_from_pkrm.hpp rename to third_party/libs/easy/esop/esop_from_pkrm.hpp diff --git a/libs/easy/esop/esop_from_pprm.hpp b/third_party/libs/easy/esop/esop_from_pprm.hpp similarity index 100% rename from libs/easy/esop/esop_from_pprm.hpp rename to third_party/libs/easy/esop/esop_from_pprm.hpp diff --git a/libs/easy/esop/exact_synthesis.hpp b/third_party/libs/easy/esop/exact_synthesis.hpp similarity index 100% rename from libs/easy/esop/exact_synthesis.hpp rename to third_party/libs/easy/esop/exact_synthesis.hpp diff --git a/libs/easy/esop/exorlink.hpp b/third_party/libs/easy/esop/exorlink.hpp similarity index 100% rename from libs/easy/esop/exorlink.hpp rename to third_party/libs/easy/esop/exorlink.hpp diff --git a/libs/easy/esop/exorlink4.def b/third_party/libs/easy/esop/exorlink4.def similarity index 100% rename from libs/easy/esop/exorlink4.def rename to third_party/libs/easy/esop/exorlink4.def diff --git a/libs/easy/esop/exorlink5.def b/third_party/libs/easy/esop/exorlink5.def similarity index 100% rename from libs/easy/esop/exorlink5.def rename to third_party/libs/easy/esop/exorlink5.def diff --git a/libs/easy/esop/exorlink6.def b/third_party/libs/easy/esop/exorlink6.def similarity index 100% rename from libs/easy/esop/exorlink6.def rename to third_party/libs/easy/esop/exorlink6.def diff --git a/libs/easy/esop/helliwell.hpp b/third_party/libs/easy/esop/helliwell.hpp similarity index 100% rename from libs/easy/esop/helliwell.hpp rename to third_party/libs/easy/esop/helliwell.hpp diff --git a/libs/easy/esop/synthesis.hpp b/third_party/libs/easy/esop/synthesis.hpp similarity index 100% rename from libs/easy/esop/synthesis.hpp rename to third_party/libs/easy/esop/synthesis.hpp diff --git a/libs/easy/io/read_esop.hpp b/third_party/libs/easy/io/read_esop.hpp similarity index 100% rename from libs/easy/io/read_esop.hpp rename to third_party/libs/easy/io/read_esop.hpp diff --git a/libs/easy/io/write_esop.hpp b/third_party/libs/easy/io/write_esop.hpp similarity index 100% rename from libs/easy/io/write_esop.hpp rename to third_party/libs/easy/io/write_esop.hpp diff --git a/libs/easy/sat/cnf_writer.hpp b/third_party/libs/easy/sat/cnf_writer.hpp similarity index 100% rename from libs/easy/sat/cnf_writer.hpp rename to third_party/libs/easy/sat/cnf_writer.hpp diff --git a/libs/easy/sat/constraints.hpp b/third_party/libs/easy/sat/constraints.hpp similarity index 100% rename from libs/easy/sat/constraints.hpp rename to third_party/libs/easy/sat/constraints.hpp diff --git a/libs/easy/sat/gauss.hpp b/third_party/libs/easy/sat/gauss.hpp similarity index 100% rename from libs/easy/sat/gauss.hpp rename to third_party/libs/easy/sat/gauss.hpp diff --git a/libs/easy/sat/sat_solver.hpp b/third_party/libs/easy/sat/sat_solver.hpp similarity index 100% rename from libs/easy/sat/sat_solver.hpp rename to third_party/libs/easy/sat/sat_solver.hpp diff --git a/libs/easy/sat/xor_clauses_to_cnf.hpp b/third_party/libs/easy/sat/xor_clauses_to_cnf.hpp similarity index 100% rename from libs/easy/sat/xor_clauses_to_cnf.hpp rename to third_party/libs/easy/sat/xor_clauses_to_cnf.hpp diff --git a/libs/easy/sat2/cardinality.hpp b/third_party/libs/easy/sat2/cardinality.hpp similarity index 100% rename from libs/easy/sat2/cardinality.hpp rename to third_party/libs/easy/sat2/cardinality.hpp diff --git a/libs/easy/sat2/cnf_from_xcnf.hpp b/third_party/libs/easy/sat2/cnf_from_xcnf.hpp similarity index 100% rename from libs/easy/sat2/cnf_from_xcnf.hpp rename to third_party/libs/easy/sat2/cnf_from_xcnf.hpp diff --git a/libs/easy/sat2/core_utils.hpp b/third_party/libs/easy/sat2/core_utils.hpp similarity index 100% rename from libs/easy/sat2/core_utils.hpp rename to third_party/libs/easy/sat2/core_utils.hpp diff --git a/libs/easy/sat2/maxsat.hpp b/third_party/libs/easy/sat2/maxsat.hpp similarity index 100% rename from libs/easy/sat2/maxsat.hpp rename to third_party/libs/easy/sat2/maxsat.hpp diff --git a/libs/easy/sat2/sat_solver.hpp b/third_party/libs/easy/sat2/sat_solver.hpp similarity index 100% rename from libs/easy/sat2/sat_solver.hpp rename to third_party/libs/easy/sat2/sat_solver.hpp diff --git a/libs/easy/utils/dynamic_bitset.hpp b/third_party/libs/easy/utils/dynamic_bitset.hpp similarity index 100% rename from libs/easy/utils/dynamic_bitset.hpp rename to third_party/libs/easy/utils/dynamic_bitset.hpp diff --git a/libs/easy/utils/stopwatch.hpp b/third_party/libs/easy/utils/stopwatch.hpp similarity index 100% rename from libs/easy/utils/stopwatch.hpp rename to third_party/libs/easy/utils/stopwatch.hpp diff --git a/libs/easy/utils/string_utils.hpp b/third_party/libs/easy/utils/string_utils.hpp similarity index 100% rename from libs/easy/utils/string_utils.hpp rename to third_party/libs/easy/utils/string_utils.hpp diff --git a/libs/ez/direct_iterator.hpp b/third_party/libs/ez/direct_iterator.hpp similarity index 100% rename from libs/ez/direct_iterator.hpp rename to third_party/libs/ez/direct_iterator.hpp diff --git a/libs/fmt/chrono.h b/third_party/libs/fmt/chrono.h similarity index 100% rename from libs/fmt/chrono.h rename to third_party/libs/fmt/chrono.h diff --git a/libs/fmt/color.h b/third_party/libs/fmt/color.h similarity index 100% rename from libs/fmt/color.h rename to third_party/libs/fmt/color.h diff --git a/libs/fmt/container.h b/third_party/libs/fmt/container.h similarity index 100% rename from libs/fmt/container.h rename to third_party/libs/fmt/container.h diff --git a/libs/fmt/core.h b/third_party/libs/fmt/core.h similarity index 100% rename from libs/fmt/core.h rename to third_party/libs/fmt/core.h diff --git a/libs/fmt/format-inl.h b/third_party/libs/fmt/format-inl.h similarity index 100% rename from libs/fmt/format-inl.h rename to third_party/libs/fmt/format-inl.h diff --git a/libs/fmt/format.cc b/third_party/libs/fmt/format.cc similarity index 100% rename from libs/fmt/format.cc rename to third_party/libs/fmt/format.cc diff --git a/libs/fmt/format.h b/third_party/libs/fmt/format.h similarity index 100% rename from libs/fmt/format.h rename to third_party/libs/fmt/format.h diff --git a/libs/fmt/locale.h b/third_party/libs/fmt/locale.h similarity index 100% rename from libs/fmt/locale.h rename to third_party/libs/fmt/locale.h diff --git a/libs/fmt/ostream.cc b/third_party/libs/fmt/ostream.cc similarity index 100% rename from libs/fmt/ostream.cc rename to third_party/libs/fmt/ostream.cc diff --git a/libs/fmt/ostream.h b/third_party/libs/fmt/ostream.h similarity index 100% rename from libs/fmt/ostream.h rename to third_party/libs/fmt/ostream.h diff --git a/libs/fmt/posix.cc b/third_party/libs/fmt/posix.cc similarity index 100% rename from libs/fmt/posix.cc rename to third_party/libs/fmt/posix.cc diff --git a/libs/fmt/posix.h b/third_party/libs/fmt/posix.h similarity index 100% rename from libs/fmt/posix.h rename to third_party/libs/fmt/posix.h diff --git a/libs/fmt/printf.cc b/third_party/libs/fmt/printf.cc similarity index 100% rename from libs/fmt/printf.cc rename to third_party/libs/fmt/printf.cc diff --git a/libs/fmt/printf.h b/third_party/libs/fmt/printf.h similarity index 100% rename from libs/fmt/printf.h rename to third_party/libs/fmt/printf.h diff --git a/libs/fmt/ranges.h b/third_party/libs/fmt/ranges.h similarity index 100% rename from libs/fmt/ranges.h rename to third_party/libs/fmt/ranges.h diff --git a/libs/fmt/string.h b/third_party/libs/fmt/string.h similarity index 100% rename from libs/fmt/string.h rename to third_party/libs/fmt/string.h diff --git a/libs/fmt/time.h b/third_party/libs/fmt/time.h similarity index 100% rename from libs/fmt/time.h rename to third_party/libs/fmt/time.h diff --git a/libs/glucose/glucose.hpp b/third_party/libs/glucose/glucose.hpp similarity index 100% rename from libs/glucose/glucose.hpp rename to third_party/libs/glucose/glucose.hpp diff --git a/libs/kitty/affine.hpp b/third_party/libs/kitty/affine.hpp similarity index 100% rename from libs/kitty/affine.hpp rename to third_party/libs/kitty/affine.hpp diff --git a/libs/kitty/algorithm.hpp b/third_party/libs/kitty/algorithm.hpp similarity index 100% rename from libs/kitty/algorithm.hpp rename to third_party/libs/kitty/algorithm.hpp diff --git a/libs/kitty/bit_operations.hpp b/third_party/libs/kitty/bit_operations.hpp similarity index 100% rename from libs/kitty/bit_operations.hpp rename to third_party/libs/kitty/bit_operations.hpp diff --git a/libs/kitty/cnf.hpp b/third_party/libs/kitty/cnf.hpp similarity index 100% rename from libs/kitty/cnf.hpp rename to third_party/libs/kitty/cnf.hpp diff --git a/libs/kitty/constructors.hpp b/third_party/libs/kitty/constructors.hpp similarity index 100% rename from libs/kitty/constructors.hpp rename to third_party/libs/kitty/constructors.hpp diff --git a/libs/kitty/cube.hpp b/third_party/libs/kitty/cube.hpp similarity index 100% rename from libs/kitty/cube.hpp rename to third_party/libs/kitty/cube.hpp diff --git a/libs/kitty/decomposition.hpp b/third_party/libs/kitty/decomposition.hpp similarity index 100% rename from libs/kitty/decomposition.hpp rename to third_party/libs/kitty/decomposition.hpp diff --git a/libs/kitty/detail/constants.hpp b/third_party/libs/kitty/detail/constants.hpp similarity index 100% rename from libs/kitty/detail/constants.hpp rename to third_party/libs/kitty/detail/constants.hpp diff --git a/libs/kitty/detail/linear_constants.hpp b/third_party/libs/kitty/detail/linear_constants.hpp similarity index 100% rename from libs/kitty/detail/linear_constants.hpp rename to third_party/libs/kitty/detail/linear_constants.hpp diff --git a/libs/kitty/detail/mscfix.hpp b/third_party/libs/kitty/detail/mscfix.hpp similarity index 100% rename from libs/kitty/detail/mscfix.hpp rename to third_party/libs/kitty/detail/mscfix.hpp diff --git a/libs/kitty/detail/utils.hpp b/third_party/libs/kitty/detail/utils.hpp similarity index 100% rename from libs/kitty/detail/utils.hpp rename to third_party/libs/kitty/detail/utils.hpp diff --git a/libs/kitty/dynamic_truth_table.hpp b/third_party/libs/kitty/dynamic_truth_table.hpp similarity index 100% rename from libs/kitty/dynamic_truth_table.hpp rename to third_party/libs/kitty/dynamic_truth_table.hpp diff --git a/libs/kitty/enumeration.hpp b/third_party/libs/kitty/enumeration.hpp similarity index 100% rename from libs/kitty/enumeration.hpp rename to third_party/libs/kitty/enumeration.hpp diff --git a/libs/kitty/esop.hpp b/third_party/libs/kitty/esop.hpp similarity index 100% rename from libs/kitty/esop.hpp rename to third_party/libs/kitty/esop.hpp diff --git a/libs/kitty/hash.hpp b/third_party/libs/kitty/hash.hpp similarity index 100% rename from libs/kitty/hash.hpp rename to third_party/libs/kitty/hash.hpp diff --git a/libs/kitty/implicant.hpp b/third_party/libs/kitty/implicant.hpp similarity index 100% rename from libs/kitty/implicant.hpp rename to third_party/libs/kitty/implicant.hpp diff --git a/libs/kitty/isop.hpp b/third_party/libs/kitty/isop.hpp similarity index 100% rename from libs/kitty/isop.hpp rename to third_party/libs/kitty/isop.hpp diff --git a/libs/kitty/kitty.hpp b/third_party/libs/kitty/kitty.hpp similarity index 100% rename from libs/kitty/kitty.hpp rename to third_party/libs/kitty/kitty.hpp diff --git a/libs/kitty/npn.hpp b/third_party/libs/kitty/npn.hpp similarity index 100% rename from libs/kitty/npn.hpp rename to third_party/libs/kitty/npn.hpp diff --git a/libs/kitty/operations.hpp b/third_party/libs/kitty/operations.hpp similarity index 100% rename from libs/kitty/operations.hpp rename to third_party/libs/kitty/operations.hpp diff --git a/libs/kitty/operators.hpp b/third_party/libs/kitty/operators.hpp similarity index 100% rename from libs/kitty/operators.hpp rename to third_party/libs/kitty/operators.hpp diff --git a/libs/kitty/permutation.hpp b/third_party/libs/kitty/permutation.hpp similarity index 100% rename from libs/kitty/permutation.hpp rename to third_party/libs/kitty/permutation.hpp diff --git a/libs/kitty/print.hpp b/third_party/libs/kitty/print.hpp similarity index 100% rename from libs/kitty/print.hpp rename to third_party/libs/kitty/print.hpp diff --git a/libs/kitty/properties.hpp b/third_party/libs/kitty/properties.hpp similarity index 100% rename from libs/kitty/properties.hpp rename to third_party/libs/kitty/properties.hpp diff --git a/libs/kitty/spectral.hpp b/third_party/libs/kitty/spectral.hpp similarity index 100% rename from libs/kitty/spectral.hpp rename to third_party/libs/kitty/spectral.hpp diff --git a/libs/kitty/static_truth_table.hpp b/third_party/libs/kitty/static_truth_table.hpp similarity index 100% rename from libs/kitty/static_truth_table.hpp rename to third_party/libs/kitty/static_truth_table.hpp diff --git a/libs/kitty/traits.hpp b/third_party/libs/kitty/traits.hpp similarity index 100% rename from libs/kitty/traits.hpp rename to third_party/libs/kitty/traits.hpp diff --git a/libs/lorina/aiger.hpp b/third_party/libs/lorina/aiger.hpp similarity index 100% rename from libs/lorina/aiger.hpp rename to third_party/libs/lorina/aiger.hpp diff --git a/libs/lorina/bench.hpp b/third_party/libs/lorina/bench.hpp similarity index 100% rename from libs/lorina/bench.hpp rename to third_party/libs/lorina/bench.hpp diff --git a/libs/lorina/blif.hpp b/third_party/libs/lorina/blif.hpp similarity index 100% rename from libs/lorina/blif.hpp rename to third_party/libs/lorina/blif.hpp diff --git a/libs/lorina/common.hpp b/third_party/libs/lorina/common.hpp similarity index 100% rename from libs/lorina/common.hpp rename to third_party/libs/lorina/common.hpp diff --git a/libs/lorina/detail/tokenizer.hpp b/third_party/libs/lorina/detail/tokenizer.hpp similarity index 100% rename from libs/lorina/detail/tokenizer.hpp rename to third_party/libs/lorina/detail/tokenizer.hpp diff --git a/libs/lorina/detail/utils.hpp b/third_party/libs/lorina/detail/utils.hpp similarity index 100% rename from libs/lorina/detail/utils.hpp rename to third_party/libs/lorina/detail/utils.hpp diff --git a/libs/lorina/diagnostics.hpp b/third_party/libs/lorina/diagnostics.hpp similarity index 100% rename from libs/lorina/diagnostics.hpp rename to third_party/libs/lorina/diagnostics.hpp diff --git a/libs/lorina/lorina.hpp b/third_party/libs/lorina/lorina.hpp similarity index 100% rename from libs/lorina/lorina.hpp rename to third_party/libs/lorina/lorina.hpp diff --git a/libs/lorina/pla.hpp b/third_party/libs/lorina/pla.hpp similarity index 100% rename from libs/lorina/pla.hpp rename to third_party/libs/lorina/pla.hpp diff --git a/libs/lorina/verilog.hpp b/third_party/libs/lorina/verilog.hpp similarity index 100% rename from libs/lorina/verilog.hpp rename to third_party/libs/lorina/verilog.hpp diff --git a/libs/lorina/verilog_regex.hpp b/third_party/libs/lorina/verilog_regex.hpp similarity index 100% rename from libs/lorina/verilog_regex.hpp rename to third_party/libs/lorina/verilog_regex.hpp diff --git a/libs/mockturtle/algorithms/aig_resub.hpp b/third_party/libs/mockturtle/algorithms/aig_resub.hpp similarity index 100% rename from libs/mockturtle/algorithms/aig_resub.hpp rename to third_party/libs/mockturtle/algorithms/aig_resub.hpp diff --git a/libs/mockturtle/algorithms/akers_synthesis.hpp b/third_party/libs/mockturtle/algorithms/akers_synthesis.hpp similarity index 100% rename from libs/mockturtle/algorithms/akers_synthesis.hpp rename to third_party/libs/mockturtle/algorithms/akers_synthesis.hpp diff --git a/libs/mockturtle/algorithms/cell_window.hpp b/third_party/libs/mockturtle/algorithms/cell_window.hpp similarity index 100% rename from libs/mockturtle/algorithms/cell_window.hpp rename to third_party/libs/mockturtle/algorithms/cell_window.hpp diff --git a/libs/mockturtle/algorithms/cleanup.hpp b/third_party/libs/mockturtle/algorithms/cleanup.hpp similarity index 100% rename from libs/mockturtle/algorithms/cleanup.hpp rename to third_party/libs/mockturtle/algorithms/cleanup.hpp diff --git a/libs/mockturtle/algorithms/cnf.hpp b/third_party/libs/mockturtle/algorithms/cnf.hpp similarity index 100% rename from libs/mockturtle/algorithms/cnf.hpp rename to third_party/libs/mockturtle/algorithms/cnf.hpp diff --git a/libs/mockturtle/algorithms/collapse_mapped.hpp b/third_party/libs/mockturtle/algorithms/collapse_mapped.hpp similarity index 100% rename from libs/mockturtle/algorithms/collapse_mapped.hpp rename to third_party/libs/mockturtle/algorithms/collapse_mapped.hpp diff --git a/libs/mockturtle/algorithms/cut_enumeration.hpp b/third_party/libs/mockturtle/algorithms/cut_enumeration.hpp similarity index 100% rename from libs/mockturtle/algorithms/cut_enumeration.hpp rename to third_party/libs/mockturtle/algorithms/cut_enumeration.hpp diff --git a/libs/mockturtle/algorithms/cut_enumeration/cnf_cut.hpp b/third_party/libs/mockturtle/algorithms/cut_enumeration/cnf_cut.hpp similarity index 100% rename from libs/mockturtle/algorithms/cut_enumeration/cnf_cut.hpp rename to third_party/libs/mockturtle/algorithms/cut_enumeration/cnf_cut.hpp diff --git a/libs/mockturtle/algorithms/cut_enumeration/gia_cut.hpp b/third_party/libs/mockturtle/algorithms/cut_enumeration/gia_cut.hpp similarity index 100% rename from libs/mockturtle/algorithms/cut_enumeration/gia_cut.hpp rename to third_party/libs/mockturtle/algorithms/cut_enumeration/gia_cut.hpp diff --git a/libs/mockturtle/algorithms/cut_enumeration/mf_cut.hpp b/third_party/libs/mockturtle/algorithms/cut_enumeration/mf_cut.hpp similarity index 100% rename from libs/mockturtle/algorithms/cut_enumeration/mf_cut.hpp rename to third_party/libs/mockturtle/algorithms/cut_enumeration/mf_cut.hpp diff --git a/libs/mockturtle/algorithms/cut_enumeration/spectr_cut.hpp b/third_party/libs/mockturtle/algorithms/cut_enumeration/spectr_cut.hpp similarity index 100% rename from libs/mockturtle/algorithms/cut_enumeration/spectr_cut.hpp rename to third_party/libs/mockturtle/algorithms/cut_enumeration/spectr_cut.hpp diff --git a/libs/mockturtle/algorithms/cut_rewriting.hpp b/third_party/libs/mockturtle/algorithms/cut_rewriting.hpp similarity index 100% rename from libs/mockturtle/algorithms/cut_rewriting.hpp rename to third_party/libs/mockturtle/algorithms/cut_rewriting.hpp diff --git a/libs/mockturtle/algorithms/detail/mffc_utils.hpp b/third_party/libs/mockturtle/algorithms/detail/mffc_utils.hpp similarity index 100% rename from libs/mockturtle/algorithms/detail/mffc_utils.hpp rename to third_party/libs/mockturtle/algorithms/detail/mffc_utils.hpp diff --git a/libs/mockturtle/algorithms/dont_cares.hpp b/third_party/libs/mockturtle/algorithms/dont_cares.hpp similarity index 100% rename from libs/mockturtle/algorithms/dont_cares.hpp rename to third_party/libs/mockturtle/algorithms/dont_cares.hpp diff --git a/libs/mockturtle/algorithms/dsd_decomposition.hpp b/third_party/libs/mockturtle/algorithms/dsd_decomposition.hpp similarity index 100% rename from libs/mockturtle/algorithms/dsd_decomposition.hpp rename to third_party/libs/mockturtle/algorithms/dsd_decomposition.hpp diff --git a/libs/mockturtle/algorithms/equivalence_checking.hpp b/third_party/libs/mockturtle/algorithms/equivalence_checking.hpp similarity index 100% rename from libs/mockturtle/algorithms/equivalence_checking.hpp rename to third_party/libs/mockturtle/algorithms/equivalence_checking.hpp diff --git a/libs/mockturtle/algorithms/gates_to_nodes.hpp b/third_party/libs/mockturtle/algorithms/gates_to_nodes.hpp similarity index 100% rename from libs/mockturtle/algorithms/gates_to_nodes.hpp rename to third_party/libs/mockturtle/algorithms/gates_to_nodes.hpp diff --git a/libs/mockturtle/algorithms/lut_mapping.hpp b/third_party/libs/mockturtle/algorithms/lut_mapping.hpp similarity index 100% rename from libs/mockturtle/algorithms/lut_mapping.hpp rename to third_party/libs/mockturtle/algorithms/lut_mapping.hpp diff --git a/libs/mockturtle/algorithms/mig_algebraic_rewriting.hpp b/third_party/libs/mockturtle/algorithms/mig_algebraic_rewriting.hpp similarity index 100% rename from libs/mockturtle/algorithms/mig_algebraic_rewriting.hpp rename to third_party/libs/mockturtle/algorithms/mig_algebraic_rewriting.hpp diff --git a/libs/mockturtle/algorithms/mig_resub.hpp b/third_party/libs/mockturtle/algorithms/mig_resub.hpp similarity index 100% rename from libs/mockturtle/algorithms/mig_resub.hpp rename to third_party/libs/mockturtle/algorithms/mig_resub.hpp diff --git a/libs/mockturtle/algorithms/miter.hpp b/third_party/libs/mockturtle/algorithms/miter.hpp similarity index 100% rename from libs/mockturtle/algorithms/miter.hpp rename to third_party/libs/mockturtle/algorithms/miter.hpp diff --git a/libs/mockturtle/algorithms/node_resynthesis.hpp b/third_party/libs/mockturtle/algorithms/node_resynthesis.hpp similarity index 100% rename from libs/mockturtle/algorithms/node_resynthesis.hpp rename to third_party/libs/mockturtle/algorithms/node_resynthesis.hpp diff --git a/libs/mockturtle/algorithms/node_resynthesis/akers.hpp b/third_party/libs/mockturtle/algorithms/node_resynthesis/akers.hpp similarity index 100% rename from libs/mockturtle/algorithms/node_resynthesis/akers.hpp rename to third_party/libs/mockturtle/algorithms/node_resynthesis/akers.hpp diff --git a/libs/mockturtle/algorithms/node_resynthesis/direct.hpp b/third_party/libs/mockturtle/algorithms/node_resynthesis/direct.hpp similarity index 100% rename from libs/mockturtle/algorithms/node_resynthesis/direct.hpp rename to third_party/libs/mockturtle/algorithms/node_resynthesis/direct.hpp diff --git a/libs/mockturtle/algorithms/node_resynthesis/exact.hpp b/third_party/libs/mockturtle/algorithms/node_resynthesis/exact.hpp similarity index 100% rename from libs/mockturtle/algorithms/node_resynthesis/exact.hpp rename to third_party/libs/mockturtle/algorithms/node_resynthesis/exact.hpp diff --git a/libs/mockturtle/algorithms/node_resynthesis/mig_npn.hpp b/third_party/libs/mockturtle/algorithms/node_resynthesis/mig_npn.hpp similarity index 100% rename from libs/mockturtle/algorithms/node_resynthesis/mig_npn.hpp rename to third_party/libs/mockturtle/algorithms/node_resynthesis/mig_npn.hpp diff --git a/libs/mockturtle/algorithms/node_resynthesis/xag_minmc.hpp b/third_party/libs/mockturtle/algorithms/node_resynthesis/xag_minmc.hpp similarity index 100% rename from libs/mockturtle/algorithms/node_resynthesis/xag_minmc.hpp rename to third_party/libs/mockturtle/algorithms/node_resynthesis/xag_minmc.hpp diff --git a/libs/mockturtle/algorithms/node_resynthesis/xag_npn.hpp b/third_party/libs/mockturtle/algorithms/node_resynthesis/xag_npn.hpp similarity index 100% rename from libs/mockturtle/algorithms/node_resynthesis/xag_npn.hpp rename to third_party/libs/mockturtle/algorithms/node_resynthesis/xag_npn.hpp diff --git a/libs/mockturtle/algorithms/node_resynthesis/xmg_npn.hpp b/third_party/libs/mockturtle/algorithms/node_resynthesis/xmg_npn.hpp similarity index 100% rename from libs/mockturtle/algorithms/node_resynthesis/xmg_npn.hpp rename to third_party/libs/mockturtle/algorithms/node_resynthesis/xmg_npn.hpp diff --git a/libs/mockturtle/algorithms/reconv_cut.hpp b/third_party/libs/mockturtle/algorithms/reconv_cut.hpp similarity index 100% rename from libs/mockturtle/algorithms/reconv_cut.hpp rename to third_party/libs/mockturtle/algorithms/reconv_cut.hpp diff --git a/libs/mockturtle/algorithms/reconv_cut2.hpp b/third_party/libs/mockturtle/algorithms/reconv_cut2.hpp similarity index 100% rename from libs/mockturtle/algorithms/reconv_cut2.hpp rename to third_party/libs/mockturtle/algorithms/reconv_cut2.hpp diff --git a/libs/mockturtle/algorithms/refactoring.hpp b/third_party/libs/mockturtle/algorithms/refactoring.hpp similarity index 100% rename from libs/mockturtle/algorithms/refactoring.hpp rename to third_party/libs/mockturtle/algorithms/refactoring.hpp diff --git a/libs/mockturtle/algorithms/resubstitution.hpp b/third_party/libs/mockturtle/algorithms/resubstitution.hpp similarity index 100% rename from libs/mockturtle/algorithms/resubstitution.hpp rename to third_party/libs/mockturtle/algorithms/resubstitution.hpp diff --git a/libs/mockturtle/algorithms/satlut_mapping.hpp b/third_party/libs/mockturtle/algorithms/satlut_mapping.hpp similarity index 100% rename from libs/mockturtle/algorithms/satlut_mapping.hpp rename to third_party/libs/mockturtle/algorithms/satlut_mapping.hpp diff --git a/libs/mockturtle/algorithms/simulation.hpp b/third_party/libs/mockturtle/algorithms/simulation.hpp similarity index 100% rename from libs/mockturtle/algorithms/simulation.hpp rename to third_party/libs/mockturtle/algorithms/simulation.hpp diff --git a/libs/mockturtle/algorithms/xmg_algebraic_rewriting.hpp b/third_party/libs/mockturtle/algorithms/xmg_algebraic_rewriting.hpp similarity index 100% rename from libs/mockturtle/algorithms/xmg_algebraic_rewriting.hpp rename to third_party/libs/mockturtle/algorithms/xmg_algebraic_rewriting.hpp diff --git a/libs/mockturtle/generators/arithmetic.hpp b/third_party/libs/mockturtle/generators/arithmetic.hpp similarity index 100% rename from libs/mockturtle/generators/arithmetic.hpp rename to third_party/libs/mockturtle/generators/arithmetic.hpp diff --git a/libs/mockturtle/generators/control.hpp b/third_party/libs/mockturtle/generators/control.hpp similarity index 100% rename from libs/mockturtle/generators/control.hpp rename to third_party/libs/mockturtle/generators/control.hpp diff --git a/libs/mockturtle/generators/modular_arithmetic.hpp b/third_party/libs/mockturtle/generators/modular_arithmetic.hpp similarity index 100% rename from libs/mockturtle/generators/modular_arithmetic.hpp rename to third_party/libs/mockturtle/generators/modular_arithmetic.hpp diff --git a/libs/mockturtle/generators/random_logic_generator.hpp b/third_party/libs/mockturtle/generators/random_logic_generator.hpp similarity index 100% rename from libs/mockturtle/generators/random_logic_generator.hpp rename to third_party/libs/mockturtle/generators/random_logic_generator.hpp diff --git a/libs/mockturtle/generators/sorting.hpp b/third_party/libs/mockturtle/generators/sorting.hpp similarity index 100% rename from libs/mockturtle/generators/sorting.hpp rename to third_party/libs/mockturtle/generators/sorting.hpp diff --git a/libs/mockturtle/interface.hpp b/third_party/libs/mockturtle/interface.hpp similarity index 100% rename from libs/mockturtle/interface.hpp rename to third_party/libs/mockturtle/interface.hpp diff --git a/libs/mockturtle/io/aiger_reader.hpp b/third_party/libs/mockturtle/io/aiger_reader.hpp similarity index 100% rename from libs/mockturtle/io/aiger_reader.hpp rename to third_party/libs/mockturtle/io/aiger_reader.hpp diff --git a/libs/mockturtle/io/bench_reader.hpp b/third_party/libs/mockturtle/io/bench_reader.hpp similarity index 100% rename from libs/mockturtle/io/bench_reader.hpp rename to third_party/libs/mockturtle/io/bench_reader.hpp diff --git a/libs/mockturtle/io/pla_reader.hpp b/third_party/libs/mockturtle/io/pla_reader.hpp similarity index 100% rename from libs/mockturtle/io/pla_reader.hpp rename to third_party/libs/mockturtle/io/pla_reader.hpp diff --git a/libs/mockturtle/io/verilog_reader.hpp b/third_party/libs/mockturtle/io/verilog_reader.hpp similarity index 100% rename from libs/mockturtle/io/verilog_reader.hpp rename to third_party/libs/mockturtle/io/verilog_reader.hpp diff --git a/libs/mockturtle/io/write_bench.hpp b/third_party/libs/mockturtle/io/write_bench.hpp similarity index 100% rename from libs/mockturtle/io/write_bench.hpp rename to third_party/libs/mockturtle/io/write_bench.hpp diff --git a/libs/mockturtle/io/write_dimacs.hpp b/third_party/libs/mockturtle/io/write_dimacs.hpp similarity index 100% rename from libs/mockturtle/io/write_dimacs.hpp rename to third_party/libs/mockturtle/io/write_dimacs.hpp diff --git a/libs/mockturtle/io/write_dot.hpp b/third_party/libs/mockturtle/io/write_dot.hpp similarity index 100% rename from libs/mockturtle/io/write_dot.hpp rename to third_party/libs/mockturtle/io/write_dot.hpp diff --git a/libs/mockturtle/io/write_verilog.hpp b/third_party/libs/mockturtle/io/write_verilog.hpp similarity index 100% rename from libs/mockturtle/io/write_verilog.hpp rename to third_party/libs/mockturtle/io/write_verilog.hpp diff --git a/libs/mockturtle/mockturtle.hpp b/third_party/libs/mockturtle/mockturtle.hpp similarity index 100% rename from libs/mockturtle/mockturtle.hpp rename to third_party/libs/mockturtle/mockturtle.hpp diff --git a/libs/mockturtle/networks/aig.hpp b/third_party/libs/mockturtle/networks/aig.hpp similarity index 100% rename from libs/mockturtle/networks/aig.hpp rename to third_party/libs/mockturtle/networks/aig.hpp diff --git a/libs/mockturtle/networks/detail/foreach.hpp b/third_party/libs/mockturtle/networks/detail/foreach.hpp similarity index 100% rename from libs/mockturtle/networks/detail/foreach.hpp rename to third_party/libs/mockturtle/networks/detail/foreach.hpp diff --git a/libs/mockturtle/networks/events.hpp b/third_party/libs/mockturtle/networks/events.hpp similarity index 100% rename from libs/mockturtle/networks/events.hpp rename to third_party/libs/mockturtle/networks/events.hpp diff --git a/libs/mockturtle/networks/klut.hpp b/third_party/libs/mockturtle/networks/klut.hpp similarity index 100% rename from libs/mockturtle/networks/klut.hpp rename to third_party/libs/mockturtle/networks/klut.hpp diff --git a/libs/mockturtle/networks/mig.hpp b/third_party/libs/mockturtle/networks/mig.hpp similarity index 100% rename from libs/mockturtle/networks/mig.hpp rename to third_party/libs/mockturtle/networks/mig.hpp diff --git a/libs/mockturtle/networks/storage.hpp b/third_party/libs/mockturtle/networks/storage.hpp similarity index 100% rename from libs/mockturtle/networks/storage.hpp rename to third_party/libs/mockturtle/networks/storage.hpp diff --git a/libs/mockturtle/networks/xag.hpp b/third_party/libs/mockturtle/networks/xag.hpp similarity index 100% rename from libs/mockturtle/networks/xag.hpp rename to third_party/libs/mockturtle/networks/xag.hpp diff --git a/libs/mockturtle/networks/xmg.hpp b/third_party/libs/mockturtle/networks/xmg.hpp similarity index 100% rename from libs/mockturtle/networks/xmg.hpp rename to third_party/libs/mockturtle/networks/xmg.hpp diff --git a/libs/mockturtle/properties/migcost.hpp b/third_party/libs/mockturtle/properties/migcost.hpp similarity index 100% rename from libs/mockturtle/properties/migcost.hpp rename to third_party/libs/mockturtle/properties/migcost.hpp diff --git a/libs/mockturtle/traits.hpp b/third_party/libs/mockturtle/traits.hpp similarity index 100% rename from libs/mockturtle/traits.hpp rename to third_party/libs/mockturtle/traits.hpp diff --git a/libs/mockturtle/utils/algorithm.hpp b/third_party/libs/mockturtle/utils/algorithm.hpp similarity index 100% rename from libs/mockturtle/utils/algorithm.hpp rename to third_party/libs/mockturtle/utils/algorithm.hpp diff --git a/libs/mockturtle/utils/cuts.hpp b/third_party/libs/mockturtle/utils/cuts.hpp similarity index 100% rename from libs/mockturtle/utils/cuts.hpp rename to third_party/libs/mockturtle/utils/cuts.hpp diff --git a/libs/mockturtle/utils/mixed_radix.hpp b/third_party/libs/mockturtle/utils/mixed_radix.hpp similarity index 100% rename from libs/mockturtle/utils/mixed_radix.hpp rename to third_party/libs/mockturtle/utils/mixed_radix.hpp diff --git a/libs/mockturtle/utils/node_map.hpp b/third_party/libs/mockturtle/utils/node_map.hpp similarity index 100% rename from libs/mockturtle/utils/node_map.hpp rename to third_party/libs/mockturtle/utils/node_map.hpp diff --git a/libs/mockturtle/utils/progress_bar.hpp b/third_party/libs/mockturtle/utils/progress_bar.hpp similarity index 100% rename from libs/mockturtle/utils/progress_bar.hpp rename to third_party/libs/mockturtle/utils/progress_bar.hpp diff --git a/libs/mockturtle/utils/stopwatch.hpp b/third_party/libs/mockturtle/utils/stopwatch.hpp similarity index 100% rename from libs/mockturtle/utils/stopwatch.hpp rename to third_party/libs/mockturtle/utils/stopwatch.hpp diff --git a/libs/mockturtle/utils/string_utils.hpp b/third_party/libs/mockturtle/utils/string_utils.hpp similarity index 100% rename from libs/mockturtle/utils/string_utils.hpp rename to third_party/libs/mockturtle/utils/string_utils.hpp diff --git a/libs/mockturtle/utils/truth_table_cache.hpp b/third_party/libs/mockturtle/utils/truth_table_cache.hpp similarity index 100% rename from libs/mockturtle/utils/truth_table_cache.hpp rename to third_party/libs/mockturtle/utils/truth_table_cache.hpp diff --git a/libs/mockturtle/views/cut_view.hpp b/third_party/libs/mockturtle/views/cut_view.hpp similarity index 100% rename from libs/mockturtle/views/cut_view.hpp rename to third_party/libs/mockturtle/views/cut_view.hpp diff --git a/libs/mockturtle/views/depth_view.hpp b/third_party/libs/mockturtle/views/depth_view.hpp similarity index 100% rename from libs/mockturtle/views/depth_view.hpp rename to third_party/libs/mockturtle/views/depth_view.hpp diff --git a/libs/mockturtle/views/fanout_view.hpp b/third_party/libs/mockturtle/views/fanout_view.hpp similarity index 100% rename from libs/mockturtle/views/fanout_view.hpp rename to third_party/libs/mockturtle/views/fanout_view.hpp diff --git a/libs/mockturtle/views/fanout_view2.hpp b/third_party/libs/mockturtle/views/fanout_view2.hpp similarity index 100% rename from libs/mockturtle/views/fanout_view2.hpp rename to third_party/libs/mockturtle/views/fanout_view2.hpp diff --git a/libs/mockturtle/views/immutable_view.hpp b/third_party/libs/mockturtle/views/immutable_view.hpp similarity index 100% rename from libs/mockturtle/views/immutable_view.hpp rename to third_party/libs/mockturtle/views/immutable_view.hpp diff --git a/libs/mockturtle/views/mapping_view.hpp b/third_party/libs/mockturtle/views/mapping_view.hpp similarity index 100% rename from libs/mockturtle/views/mapping_view.hpp rename to third_party/libs/mockturtle/views/mapping_view.hpp diff --git a/libs/mockturtle/views/mffc_view.hpp b/third_party/libs/mockturtle/views/mffc_view.hpp similarity index 100% rename from libs/mockturtle/views/mffc_view.hpp rename to third_party/libs/mockturtle/views/mffc_view.hpp diff --git a/libs/mockturtle/views/topo_view.hpp b/third_party/libs/mockturtle/views/topo_view.hpp similarity index 100% rename from libs/mockturtle/views/topo_view.hpp rename to third_party/libs/mockturtle/views/topo_view.hpp diff --git a/libs/mockturtle/views/window_view.hpp b/third_party/libs/mockturtle/views/window_view.hpp similarity index 100% rename from libs/mockturtle/views/window_view.hpp rename to third_party/libs/mockturtle/views/window_view.hpp diff --git a/libs/nlohmann/adl_serializer.hpp b/third_party/libs/nlohmann/adl_serializer.hpp similarity index 100% rename from libs/nlohmann/adl_serializer.hpp rename to third_party/libs/nlohmann/adl_serializer.hpp diff --git a/libs/nlohmann/byte_container_with_subtype.hpp b/third_party/libs/nlohmann/byte_container_with_subtype.hpp similarity index 100% rename from libs/nlohmann/byte_container_with_subtype.hpp rename to third_party/libs/nlohmann/byte_container_with_subtype.hpp diff --git a/libs/nlohmann/detail/conversions/from_json.hpp b/third_party/libs/nlohmann/detail/conversions/from_json.hpp similarity index 100% rename from libs/nlohmann/detail/conversions/from_json.hpp rename to third_party/libs/nlohmann/detail/conversions/from_json.hpp diff --git a/libs/nlohmann/detail/conversions/to_chars.hpp b/third_party/libs/nlohmann/detail/conversions/to_chars.hpp similarity index 100% rename from libs/nlohmann/detail/conversions/to_chars.hpp rename to third_party/libs/nlohmann/detail/conversions/to_chars.hpp diff --git a/libs/nlohmann/detail/conversions/to_json.hpp b/third_party/libs/nlohmann/detail/conversions/to_json.hpp similarity index 100% rename from libs/nlohmann/detail/conversions/to_json.hpp rename to third_party/libs/nlohmann/detail/conversions/to_json.hpp diff --git a/libs/nlohmann/detail/exceptions.hpp b/third_party/libs/nlohmann/detail/exceptions.hpp similarity index 100% rename from libs/nlohmann/detail/exceptions.hpp rename to third_party/libs/nlohmann/detail/exceptions.hpp diff --git a/libs/nlohmann/detail/hash.hpp b/third_party/libs/nlohmann/detail/hash.hpp similarity index 100% rename from libs/nlohmann/detail/hash.hpp rename to third_party/libs/nlohmann/detail/hash.hpp diff --git a/libs/nlohmann/detail/input/binary_reader.hpp b/third_party/libs/nlohmann/detail/input/binary_reader.hpp similarity index 100% rename from libs/nlohmann/detail/input/binary_reader.hpp rename to third_party/libs/nlohmann/detail/input/binary_reader.hpp diff --git a/libs/nlohmann/detail/input/input_adapters.hpp b/third_party/libs/nlohmann/detail/input/input_adapters.hpp similarity index 100% rename from libs/nlohmann/detail/input/input_adapters.hpp rename to third_party/libs/nlohmann/detail/input/input_adapters.hpp diff --git a/libs/nlohmann/detail/input/json_sax.hpp b/third_party/libs/nlohmann/detail/input/json_sax.hpp similarity index 100% rename from libs/nlohmann/detail/input/json_sax.hpp rename to third_party/libs/nlohmann/detail/input/json_sax.hpp diff --git a/libs/nlohmann/detail/input/lexer.hpp b/third_party/libs/nlohmann/detail/input/lexer.hpp similarity index 100% rename from libs/nlohmann/detail/input/lexer.hpp rename to third_party/libs/nlohmann/detail/input/lexer.hpp diff --git a/libs/nlohmann/detail/input/parser.hpp b/third_party/libs/nlohmann/detail/input/parser.hpp similarity index 100% rename from libs/nlohmann/detail/input/parser.hpp rename to third_party/libs/nlohmann/detail/input/parser.hpp diff --git a/libs/nlohmann/detail/input/position_t.hpp b/third_party/libs/nlohmann/detail/input/position_t.hpp similarity index 100% rename from libs/nlohmann/detail/input/position_t.hpp rename to third_party/libs/nlohmann/detail/input/position_t.hpp diff --git a/libs/nlohmann/detail/iterators/internal_iterator.hpp b/third_party/libs/nlohmann/detail/iterators/internal_iterator.hpp similarity index 100% rename from libs/nlohmann/detail/iterators/internal_iterator.hpp rename to third_party/libs/nlohmann/detail/iterators/internal_iterator.hpp diff --git a/libs/nlohmann/detail/iterators/iter_impl.hpp b/third_party/libs/nlohmann/detail/iterators/iter_impl.hpp similarity index 100% rename from libs/nlohmann/detail/iterators/iter_impl.hpp rename to third_party/libs/nlohmann/detail/iterators/iter_impl.hpp diff --git a/libs/nlohmann/detail/iterators/iteration_proxy.hpp b/third_party/libs/nlohmann/detail/iterators/iteration_proxy.hpp similarity index 100% rename from libs/nlohmann/detail/iterators/iteration_proxy.hpp rename to third_party/libs/nlohmann/detail/iterators/iteration_proxy.hpp diff --git a/libs/nlohmann/detail/iterators/iterator_traits.hpp b/third_party/libs/nlohmann/detail/iterators/iterator_traits.hpp similarity index 100% rename from libs/nlohmann/detail/iterators/iterator_traits.hpp rename to third_party/libs/nlohmann/detail/iterators/iterator_traits.hpp diff --git a/libs/nlohmann/detail/iterators/json_reverse_iterator.hpp b/third_party/libs/nlohmann/detail/iterators/json_reverse_iterator.hpp similarity index 100% rename from libs/nlohmann/detail/iterators/json_reverse_iterator.hpp rename to third_party/libs/nlohmann/detail/iterators/json_reverse_iterator.hpp diff --git a/libs/nlohmann/detail/iterators/primitive_iterator.hpp b/third_party/libs/nlohmann/detail/iterators/primitive_iterator.hpp similarity index 100% rename from libs/nlohmann/detail/iterators/primitive_iterator.hpp rename to third_party/libs/nlohmann/detail/iterators/primitive_iterator.hpp diff --git a/libs/nlohmann/detail/json_pointer.hpp b/third_party/libs/nlohmann/detail/json_pointer.hpp similarity index 100% rename from libs/nlohmann/detail/json_pointer.hpp rename to third_party/libs/nlohmann/detail/json_pointer.hpp diff --git a/libs/nlohmann/detail/json_ref.hpp b/third_party/libs/nlohmann/detail/json_ref.hpp similarity index 100% rename from libs/nlohmann/detail/json_ref.hpp rename to third_party/libs/nlohmann/detail/json_ref.hpp diff --git a/libs/nlohmann/detail/macro_scope.hpp b/third_party/libs/nlohmann/detail/macro_scope.hpp similarity index 100% rename from libs/nlohmann/detail/macro_scope.hpp rename to third_party/libs/nlohmann/detail/macro_scope.hpp diff --git a/libs/nlohmann/detail/macro_unscope.hpp b/third_party/libs/nlohmann/detail/macro_unscope.hpp similarity index 100% rename from libs/nlohmann/detail/macro_unscope.hpp rename to third_party/libs/nlohmann/detail/macro_unscope.hpp diff --git a/libs/nlohmann/detail/meta/cpp_future.hpp b/third_party/libs/nlohmann/detail/meta/cpp_future.hpp similarity index 100% rename from libs/nlohmann/detail/meta/cpp_future.hpp rename to third_party/libs/nlohmann/detail/meta/cpp_future.hpp diff --git a/libs/nlohmann/detail/meta/detected.hpp b/third_party/libs/nlohmann/detail/meta/detected.hpp similarity index 100% rename from libs/nlohmann/detail/meta/detected.hpp rename to third_party/libs/nlohmann/detail/meta/detected.hpp diff --git a/libs/nlohmann/detail/meta/identity_tag.hpp b/third_party/libs/nlohmann/detail/meta/identity_tag.hpp similarity index 100% rename from libs/nlohmann/detail/meta/identity_tag.hpp rename to third_party/libs/nlohmann/detail/meta/identity_tag.hpp diff --git a/libs/nlohmann/detail/meta/is_sax.hpp b/third_party/libs/nlohmann/detail/meta/is_sax.hpp similarity index 100% rename from libs/nlohmann/detail/meta/is_sax.hpp rename to third_party/libs/nlohmann/detail/meta/is_sax.hpp diff --git a/libs/nlohmann/detail/meta/type_traits.hpp b/third_party/libs/nlohmann/detail/meta/type_traits.hpp similarity index 100% rename from libs/nlohmann/detail/meta/type_traits.hpp rename to third_party/libs/nlohmann/detail/meta/type_traits.hpp diff --git a/libs/nlohmann/detail/meta/void_t.hpp b/third_party/libs/nlohmann/detail/meta/void_t.hpp similarity index 100% rename from libs/nlohmann/detail/meta/void_t.hpp rename to third_party/libs/nlohmann/detail/meta/void_t.hpp diff --git a/libs/nlohmann/detail/output/binary_writer.hpp b/third_party/libs/nlohmann/detail/output/binary_writer.hpp similarity index 100% rename from libs/nlohmann/detail/output/binary_writer.hpp rename to third_party/libs/nlohmann/detail/output/binary_writer.hpp diff --git a/libs/nlohmann/detail/output/output_adapters.hpp b/third_party/libs/nlohmann/detail/output/output_adapters.hpp similarity index 100% rename from libs/nlohmann/detail/output/output_adapters.hpp rename to third_party/libs/nlohmann/detail/output/output_adapters.hpp diff --git a/libs/nlohmann/detail/output/serializer.hpp b/third_party/libs/nlohmann/detail/output/serializer.hpp similarity index 100% rename from libs/nlohmann/detail/output/serializer.hpp rename to third_party/libs/nlohmann/detail/output/serializer.hpp diff --git a/libs/nlohmann/detail/string_escape.hpp b/third_party/libs/nlohmann/detail/string_escape.hpp similarity index 100% rename from libs/nlohmann/detail/string_escape.hpp rename to third_party/libs/nlohmann/detail/string_escape.hpp diff --git a/libs/nlohmann/detail/value_t.hpp b/third_party/libs/nlohmann/detail/value_t.hpp similarity index 100% rename from libs/nlohmann/detail/value_t.hpp rename to third_party/libs/nlohmann/detail/value_t.hpp diff --git a/libs/nlohmann/json.hpp b/third_party/libs/nlohmann/json.hpp similarity index 100% rename from libs/nlohmann/json.hpp rename to third_party/libs/nlohmann/json.hpp diff --git a/libs/nlohmann/json_fwd.hpp b/third_party/libs/nlohmann/json_fwd.hpp similarity index 100% rename from libs/nlohmann/json_fwd.hpp rename to third_party/libs/nlohmann/json_fwd.hpp diff --git a/libs/nlohmann/ordered_map.hpp b/third_party/libs/nlohmann/ordered_map.hpp similarity index 100% rename from libs/nlohmann/ordered_map.hpp rename to third_party/libs/nlohmann/ordered_map.hpp diff --git a/libs/nlohmann/thirdparty/hedley/hedley.hpp b/third_party/libs/nlohmann/thirdparty/hedley/hedley.hpp similarity index 100% rename from libs/nlohmann/thirdparty/hedley/hedley.hpp rename to third_party/libs/nlohmann/thirdparty/hedley/hedley.hpp diff --git a/libs/nlohmann/thirdparty/hedley/hedley_undef.hpp b/third_party/libs/nlohmann/thirdparty/hedley/hedley_undef.hpp similarity index 100% rename from libs/nlohmann/thirdparty/hedley/hedley_undef.hpp rename to third_party/libs/nlohmann/thirdparty/hedley/hedley_undef.hpp diff --git a/libs/pthreadwin32/pthread.h b/third_party/libs/pthreadwin32/pthread.h similarity index 100% rename from libs/pthreadwin32/pthread.h rename to third_party/libs/pthreadwin32/pthread.h diff --git a/libs/pthreadwin32/sched.h b/third_party/libs/pthreadwin32/sched.h similarity index 100% rename from libs/pthreadwin32/sched.h rename to third_party/libs/pthreadwin32/sched.h diff --git a/libs/pthreadwin32/semaphore.h b/third_party/libs/pthreadwin32/semaphore.h similarity index 100% rename from libs/pthreadwin32/semaphore.h rename to third_party/libs/pthreadwin32/semaphore.h diff --git a/libs/pybind11/attr.h b/third_party/libs/pybind11/attr.h similarity index 100% rename from libs/pybind11/attr.h rename to third_party/libs/pybind11/attr.h diff --git a/libs/pybind11/buffer_info.h b/third_party/libs/pybind11/buffer_info.h similarity index 100% rename from libs/pybind11/buffer_info.h rename to third_party/libs/pybind11/buffer_info.h diff --git a/libs/pybind11/cast.h b/third_party/libs/pybind11/cast.h similarity index 100% rename from libs/pybind11/cast.h rename to third_party/libs/pybind11/cast.h diff --git a/libs/pybind11/chrono.h b/third_party/libs/pybind11/chrono.h similarity index 100% rename from libs/pybind11/chrono.h rename to third_party/libs/pybind11/chrono.h diff --git a/libs/pybind11/common.h b/third_party/libs/pybind11/common.h similarity index 100% rename from libs/pybind11/common.h rename to third_party/libs/pybind11/common.h diff --git a/libs/pybind11/complex.h b/third_party/libs/pybind11/complex.h similarity index 100% rename from libs/pybind11/complex.h rename to third_party/libs/pybind11/complex.h diff --git a/libs/pybind11/detail/class.h b/third_party/libs/pybind11/detail/class.h similarity index 100% rename from libs/pybind11/detail/class.h rename to third_party/libs/pybind11/detail/class.h diff --git a/libs/pybind11/detail/common.h b/third_party/libs/pybind11/detail/common.h similarity index 100% rename from libs/pybind11/detail/common.h rename to third_party/libs/pybind11/detail/common.h diff --git a/libs/pybind11/detail/descr.h b/third_party/libs/pybind11/detail/descr.h similarity index 100% rename from libs/pybind11/detail/descr.h rename to third_party/libs/pybind11/detail/descr.h diff --git a/libs/pybind11/detail/init.h b/third_party/libs/pybind11/detail/init.h similarity index 100% rename from libs/pybind11/detail/init.h rename to third_party/libs/pybind11/detail/init.h diff --git a/libs/pybind11/detail/internals.h b/third_party/libs/pybind11/detail/internals.h similarity index 100% rename from libs/pybind11/detail/internals.h rename to third_party/libs/pybind11/detail/internals.h diff --git a/libs/pybind11/detail/type_caster_base.h b/third_party/libs/pybind11/detail/type_caster_base.h similarity index 100% rename from libs/pybind11/detail/type_caster_base.h rename to third_party/libs/pybind11/detail/type_caster_base.h diff --git a/libs/pybind11/detail/typeid.h b/third_party/libs/pybind11/detail/typeid.h similarity index 100% rename from libs/pybind11/detail/typeid.h rename to third_party/libs/pybind11/detail/typeid.h diff --git a/libs/pybind11/eigen.h b/third_party/libs/pybind11/eigen.h similarity index 100% rename from libs/pybind11/eigen.h rename to third_party/libs/pybind11/eigen.h diff --git a/libs/pybind11/eigen/matrix.h b/third_party/libs/pybind11/eigen/matrix.h similarity index 100% rename from libs/pybind11/eigen/matrix.h rename to third_party/libs/pybind11/eigen/matrix.h diff --git a/libs/pybind11/eigen/tensor.h b/third_party/libs/pybind11/eigen/tensor.h similarity index 100% rename from libs/pybind11/eigen/tensor.h rename to third_party/libs/pybind11/eigen/tensor.h diff --git a/libs/pybind11/embed.h b/third_party/libs/pybind11/embed.h similarity index 100% rename from libs/pybind11/embed.h rename to third_party/libs/pybind11/embed.h diff --git a/libs/pybind11/eval.h b/third_party/libs/pybind11/eval.h similarity index 100% rename from libs/pybind11/eval.h rename to third_party/libs/pybind11/eval.h diff --git a/libs/pybind11/functional.h b/third_party/libs/pybind11/functional.h similarity index 100% rename from libs/pybind11/functional.h rename to third_party/libs/pybind11/functional.h diff --git a/libs/pybind11/gil.h b/third_party/libs/pybind11/gil.h similarity index 100% rename from libs/pybind11/gil.h rename to third_party/libs/pybind11/gil.h diff --git a/libs/pybind11/iostream.h b/third_party/libs/pybind11/iostream.h similarity index 100% rename from libs/pybind11/iostream.h rename to third_party/libs/pybind11/iostream.h diff --git a/libs/pybind11/numpy.h b/third_party/libs/pybind11/numpy.h similarity index 100% rename from libs/pybind11/numpy.h rename to third_party/libs/pybind11/numpy.h diff --git a/libs/pybind11/operators.h b/third_party/libs/pybind11/operators.h similarity index 100% rename from libs/pybind11/operators.h rename to third_party/libs/pybind11/operators.h diff --git a/libs/pybind11/options.h b/third_party/libs/pybind11/options.h similarity index 100% rename from libs/pybind11/options.h rename to third_party/libs/pybind11/options.h diff --git a/libs/pybind11/pybind11.h b/third_party/libs/pybind11/pybind11.h similarity index 100% rename from libs/pybind11/pybind11.h rename to third_party/libs/pybind11/pybind11.h diff --git a/libs/pybind11/pytypes.h b/third_party/libs/pybind11/pytypes.h similarity index 100% rename from libs/pybind11/pytypes.h rename to third_party/libs/pybind11/pytypes.h diff --git a/libs/pybind11/stl.h b/third_party/libs/pybind11/stl.h similarity index 100% rename from libs/pybind11/stl.h rename to third_party/libs/pybind11/stl.h diff --git a/libs/pybind11/stl/filesystem.h b/third_party/libs/pybind11/stl/filesystem.h similarity index 100% rename from libs/pybind11/stl/filesystem.h rename to third_party/libs/pybind11/stl/filesystem.h diff --git a/libs/pybind11/stl_bind.h b/third_party/libs/pybind11/stl_bind.h similarity index 100% rename from libs/pybind11/stl_bind.h rename to third_party/libs/pybind11/stl_bind.h diff --git a/libs/rang/rang.hpp b/third_party/libs/rang/rang.hpp similarity index 100% rename from libs/rang/rang.hpp rename to third_party/libs/rang/rang.hpp diff --git a/libs/sparsepp/spp.h b/third_party/libs/sparsepp/spp.h similarity index 100% rename from libs/sparsepp/spp.h rename to third_party/libs/sparsepp/spp.h diff --git a/libs/sparsepp/spp_config.h b/third_party/libs/sparsepp/spp_config.h similarity index 100% rename from libs/sparsepp/spp_config.h rename to third_party/libs/sparsepp/spp_config.h diff --git a/libs/sparsepp/spp_dlalloc.h b/third_party/libs/sparsepp/spp_dlalloc.h similarity index 100% rename from libs/sparsepp/spp_dlalloc.h rename to third_party/libs/sparsepp/spp_dlalloc.h diff --git a/libs/sparsepp/spp_memory.h b/third_party/libs/sparsepp/spp_memory.h similarity index 100% rename from libs/sparsepp/spp_memory.h rename to third_party/libs/sparsepp/spp_memory.h diff --git a/libs/sparsepp/spp_smartptr.h b/third_party/libs/sparsepp/spp_smartptr.h similarity index 100% rename from libs/sparsepp/spp_smartptr.h rename to third_party/libs/sparsepp/spp_smartptr.h diff --git a/libs/sparsepp/spp_stdint.h b/third_party/libs/sparsepp/spp_stdint.h similarity index 100% rename from libs/sparsepp/spp_stdint.h rename to third_party/libs/sparsepp/spp_stdint.h diff --git a/libs/sparsepp/spp_timer.h b/third_party/libs/sparsepp/spp_timer.h similarity index 100% rename from libs/sparsepp/spp_timer.h rename to third_party/libs/sparsepp/spp_timer.h diff --git a/libs/sparsepp/spp_traits.h b/third_party/libs/sparsepp/spp_traits.h similarity index 100% rename from libs/sparsepp/spp_traits.h rename to third_party/libs/sparsepp/spp_traits.h diff --git a/libs/sparsepp/spp_utils.h b/third_party/libs/sparsepp/spp_utils.h similarity index 100% rename from libs/sparsepp/spp_utils.h rename to third_party/libs/sparsepp/spp_utils.h diff --git a/libs/tweedledum/algorithms/decomposition/barenco.hpp b/third_party/libs/tweedledum/algorithms/decomposition/barenco.hpp similarity index 100% rename from libs/tweedledum/algorithms/decomposition/barenco.hpp rename to third_party/libs/tweedledum/algorithms/decomposition/barenco.hpp diff --git a/libs/tweedledum/algorithms/decomposition/dt.hpp b/third_party/libs/tweedledum/algorithms/decomposition/dt.hpp similarity index 100% rename from libs/tweedledum/algorithms/decomposition/dt.hpp rename to third_party/libs/tweedledum/algorithms/decomposition/dt.hpp diff --git a/libs/tweedledum/algorithms/decomposition/gates/ccccx.hpp b/third_party/libs/tweedledum/algorithms/decomposition/gates/ccccx.hpp similarity index 100% rename from libs/tweedledum/algorithms/decomposition/gates/ccccx.hpp rename to third_party/libs/tweedledum/algorithms/decomposition/gates/ccccx.hpp diff --git a/libs/tweedledum/algorithms/decomposition/gates/cccx.hpp b/third_party/libs/tweedledum/algorithms/decomposition/gates/cccx.hpp similarity index 100% rename from libs/tweedledum/algorithms/decomposition/gates/cccx.hpp rename to third_party/libs/tweedledum/algorithms/decomposition/gates/cccx.hpp diff --git a/libs/tweedledum/algorithms/decomposition/gates/ccx.hpp b/third_party/libs/tweedledum/algorithms/decomposition/gates/ccx.hpp similarity index 100% rename from libs/tweedledum/algorithms/decomposition/gates/ccx.hpp rename to third_party/libs/tweedledum/algorithms/decomposition/gates/ccx.hpp diff --git a/libs/tweedledum/algorithms/decomposition/gates/ccz.hpp b/third_party/libs/tweedledum/algorithms/decomposition/gates/ccz.hpp similarity index 100% rename from libs/tweedledum/algorithms/decomposition/gates/ccz.hpp rename to third_party/libs/tweedledum/algorithms/decomposition/gates/ccz.hpp diff --git a/libs/tweedledum/algorithms/decomposition/gates/database.hpp b/third_party/libs/tweedledum/algorithms/decomposition/gates/database.hpp similarity index 100% rename from libs/tweedledum/algorithms/decomposition/gates/database.hpp rename to third_party/libs/tweedledum/algorithms/decomposition/gates/database.hpp diff --git a/libs/tweedledum/algorithms/generic/convert_to.hpp b/third_party/libs/tweedledum/algorithms/generic/convert_to.hpp similarity index 100% rename from libs/tweedledum/algorithms/generic/convert_to.hpp rename to third_party/libs/tweedledum/algorithms/generic/convert_to.hpp diff --git a/libs/tweedledum/algorithms/generic/remove_marked.hpp b/third_party/libs/tweedledum/algorithms/generic/remove_marked.hpp similarity index 100% rename from libs/tweedledum/algorithms/generic/remove_marked.hpp rename to third_party/libs/tweedledum/algorithms/generic/remove_marked.hpp diff --git a/libs/tweedledum/algorithms/generic/rewrite.hpp b/third_party/libs/tweedledum/algorithms/generic/rewrite.hpp similarity index 100% rename from libs/tweedledum/algorithms/generic/rewrite.hpp rename to third_party/libs/tweedledum/algorithms/generic/rewrite.hpp diff --git a/libs/tweedledum/algorithms/generic/shallow_duplicate.hpp b/third_party/libs/tweedledum/algorithms/generic/shallow_duplicate.hpp similarity index 100% rename from libs/tweedledum/algorithms/generic/shallow_duplicate.hpp rename to third_party/libs/tweedledum/algorithms/generic/shallow_duplicate.hpp diff --git a/libs/tweedledum/algorithms/identify_rz.hpp b/third_party/libs/tweedledum/algorithms/identify_rz.hpp similarity index 100% rename from libs/tweedledum/algorithms/identify_rz.hpp rename to third_party/libs/tweedledum/algorithms/identify_rz.hpp diff --git a/libs/tweedledum/algorithms/mapping/sat_map.hpp b/third_party/libs/tweedledum/algorithms/mapping/sat_map.hpp similarity index 100% rename from libs/tweedledum/algorithms/mapping/sat_map.hpp rename to third_party/libs/tweedledum/algorithms/mapping/sat_map.hpp diff --git a/libs/tweedledum/algorithms/mapping/zdd_map.hpp b/third_party/libs/tweedledum/algorithms/mapping/zdd_map.hpp similarity index 100% rename from libs/tweedledum/algorithms/mapping/zdd_map.hpp rename to third_party/libs/tweedledum/algorithms/mapping/zdd_map.hpp diff --git a/libs/tweedledum/algorithms/optimization/gate_cancellation.hpp b/third_party/libs/tweedledum/algorithms/optimization/gate_cancellation.hpp similarity index 100% rename from libs/tweedledum/algorithms/optimization/gate_cancellation.hpp rename to third_party/libs/tweedledum/algorithms/optimization/gate_cancellation.hpp diff --git a/libs/tweedledum/algorithms/optimization/phase_folding.hpp b/third_party/libs/tweedledum/algorithms/optimization/phase_folding.hpp similarity index 100% rename from libs/tweedledum/algorithms/optimization/phase_folding.hpp rename to third_party/libs/tweedledum/algorithms/optimization/phase_folding.hpp diff --git a/libs/tweedledum/algorithms/simulation/simulate_classically.hpp b/third_party/libs/tweedledum/algorithms/simulation/simulate_classically.hpp similarity index 100% rename from libs/tweedledum/algorithms/simulation/simulate_classically.hpp rename to third_party/libs/tweedledum/algorithms/simulation/simulate_classically.hpp diff --git a/libs/tweedledum/algorithms/synthesis/cnot_patel.hpp b/third_party/libs/tweedledum/algorithms/synthesis/cnot_patel.hpp similarity index 100% rename from libs/tweedledum/algorithms/synthesis/cnot_patel.hpp rename to third_party/libs/tweedledum/algorithms/synthesis/cnot_patel.hpp diff --git a/libs/tweedledum/algorithms/synthesis/dbs.hpp b/third_party/libs/tweedledum/algorithms/synthesis/dbs.hpp similarity index 100% rename from libs/tweedledum/algorithms/synthesis/dbs.hpp rename to third_party/libs/tweedledum/algorithms/synthesis/dbs.hpp diff --git a/libs/tweedledum/algorithms/synthesis/diagonal_synth.hpp b/third_party/libs/tweedledum/algorithms/synthesis/diagonal_synth.hpp similarity index 100% rename from libs/tweedledum/algorithms/synthesis/diagonal_synth.hpp rename to third_party/libs/tweedledum/algorithms/synthesis/diagonal_synth.hpp diff --git a/libs/tweedledum/algorithms/synthesis/esop_phase_synth.hpp b/third_party/libs/tweedledum/algorithms/synthesis/esop_phase_synth.hpp similarity index 100% rename from libs/tweedledum/algorithms/synthesis/esop_phase_synth.hpp rename to third_party/libs/tweedledum/algorithms/synthesis/esop_phase_synth.hpp diff --git a/libs/tweedledum/algorithms/synthesis/gray_synth.hpp b/third_party/libs/tweedledum/algorithms/synthesis/gray_synth.hpp similarity index 100% rename from libs/tweedledum/algorithms/synthesis/gray_synth.hpp rename to third_party/libs/tweedledum/algorithms/synthesis/gray_synth.hpp diff --git a/libs/tweedledum/algorithms/synthesis/linear_synth.hpp b/third_party/libs/tweedledum/algorithms/synthesis/linear_synth.hpp similarity index 100% rename from libs/tweedledum/algorithms/synthesis/linear_synth.hpp rename to third_party/libs/tweedledum/algorithms/synthesis/linear_synth.hpp diff --git a/libs/tweedledum/algorithms/synthesis/stg.hpp b/third_party/libs/tweedledum/algorithms/synthesis/stg.hpp similarity index 100% rename from libs/tweedledum/algorithms/synthesis/stg.hpp rename to third_party/libs/tweedledum/algorithms/synthesis/stg.hpp diff --git a/libs/tweedledum/algorithms/synthesis/tbs.hpp b/third_party/libs/tweedledum/algorithms/synthesis/tbs.hpp similarity index 100% rename from libs/tweedledum/algorithms/synthesis/tbs.hpp rename to third_party/libs/tweedledum/algorithms/synthesis/tbs.hpp diff --git a/libs/tweedledum/gates/gate_base.hpp b/third_party/libs/tweedledum/gates/gate_base.hpp similarity index 100% rename from libs/tweedledum/gates/gate_base.hpp rename to third_party/libs/tweedledum/gates/gate_base.hpp diff --git a/libs/tweedledum/gates/gate_lib.def b/third_party/libs/tweedledum/gates/gate_lib.def similarity index 100% rename from libs/tweedledum/gates/gate_lib.def rename to third_party/libs/tweedledum/gates/gate_lib.def diff --git a/libs/tweedledum/gates/gate_lib.hpp b/third_party/libs/tweedledum/gates/gate_lib.hpp similarity index 100% rename from libs/tweedledum/gates/gate_lib.hpp rename to third_party/libs/tweedledum/gates/gate_lib.hpp diff --git a/libs/tweedledum/gates/interface.hpp b/third_party/libs/tweedledum/gates/interface.hpp similarity index 100% rename from libs/tweedledum/gates/interface.hpp rename to third_party/libs/tweedledum/gates/interface.hpp diff --git a/libs/tweedledum/gates/io3_gate.hpp b/third_party/libs/tweedledum/gates/io3_gate.hpp similarity index 100% rename from libs/tweedledum/gates/io3_gate.hpp rename to third_party/libs/tweedledum/gates/io3_gate.hpp diff --git a/libs/tweedledum/gates/mcmt_gate.hpp b/third_party/libs/tweedledum/gates/mcmt_gate.hpp similarity index 100% rename from libs/tweedledum/gates/mcmt_gate.hpp rename to third_party/libs/tweedledum/gates/mcmt_gate.hpp diff --git a/libs/tweedledum/io/dotqc.hpp b/third_party/libs/tweedledum/io/dotqc.hpp similarity index 100% rename from libs/tweedledum/io/dotqc.hpp rename to third_party/libs/tweedledum/io/dotqc.hpp diff --git a/libs/tweedledum/io/qasm.hpp b/third_party/libs/tweedledum/io/qasm.hpp similarity index 100% rename from libs/tweedledum/io/qasm.hpp rename to third_party/libs/tweedledum/io/qasm.hpp diff --git a/libs/tweedledum/io/quil.hpp b/third_party/libs/tweedledum/io/quil.hpp similarity index 100% rename from libs/tweedledum/io/quil.hpp rename to third_party/libs/tweedledum/io/quil.hpp diff --git a/libs/tweedledum/io/read_device.hpp b/third_party/libs/tweedledum/io/read_device.hpp similarity index 100% rename from libs/tweedledum/io/read_device.hpp rename to third_party/libs/tweedledum/io/read_device.hpp diff --git a/libs/tweedledum/io/write_dot.hpp b/third_party/libs/tweedledum/io/write_dot.hpp similarity index 100% rename from libs/tweedledum/io/write_dot.hpp rename to third_party/libs/tweedledum/io/write_dot.hpp diff --git a/libs/tweedledum/io/write_projectq.hpp b/third_party/libs/tweedledum/io/write_projectq.hpp similarity index 100% rename from libs/tweedledum/io/write_projectq.hpp rename to third_party/libs/tweedledum/io/write_projectq.hpp diff --git a/libs/tweedledum/io/write_qpic.hpp b/third_party/libs/tweedledum/io/write_qpic.hpp similarity index 100% rename from libs/tweedledum/io/write_qpic.hpp rename to third_party/libs/tweedledum/io/write_qpic.hpp diff --git a/libs/tweedledum/io/write_quirk.hpp b/third_party/libs/tweedledum/io/write_quirk.hpp similarity index 100% rename from libs/tweedledum/io/write_quirk.hpp rename to third_party/libs/tweedledum/io/write_quirk.hpp diff --git a/libs/tweedledum/io/write_unicode.hpp b/third_party/libs/tweedledum/io/write_unicode.hpp similarity index 100% rename from libs/tweedledum/io/write_unicode.hpp rename to third_party/libs/tweedledum/io/write_unicode.hpp diff --git a/libs/tweedledum/networks/detail/storage.hpp b/third_party/libs/tweedledum/networks/detail/storage.hpp similarity index 100% rename from libs/tweedledum/networks/detail/storage.hpp rename to third_party/libs/tweedledum/networks/detail/storage.hpp diff --git a/libs/tweedledum/networks/gg_network.hpp b/third_party/libs/tweedledum/networks/gg_network.hpp similarity index 100% rename from libs/tweedledum/networks/gg_network.hpp rename to third_party/libs/tweedledum/networks/gg_network.hpp diff --git a/libs/tweedledum/networks/interface.hpp b/third_party/libs/tweedledum/networks/interface.hpp similarity index 100% rename from libs/tweedledum/networks/interface.hpp rename to third_party/libs/tweedledum/networks/interface.hpp diff --git a/libs/tweedledum/networks/io_id.hpp b/third_party/libs/tweedledum/networks/io_id.hpp similarity index 100% rename from libs/tweedledum/networks/io_id.hpp rename to third_party/libs/tweedledum/networks/io_id.hpp diff --git a/libs/tweedledum/networks/netlist.hpp b/third_party/libs/tweedledum/networks/netlist.hpp similarity index 100% rename from libs/tweedledum/networks/netlist.hpp rename to third_party/libs/tweedledum/networks/netlist.hpp diff --git a/libs/tweedledum/traits.hpp b/third_party/libs/tweedledum/traits.hpp similarity index 100% rename from libs/tweedledum/traits.hpp rename to third_party/libs/tweedledum/traits.hpp diff --git a/libs/tweedledum/tweedledum.hpp b/third_party/libs/tweedledum/tweedledum.hpp similarity index 100% rename from libs/tweedledum/tweedledum.hpp rename to third_party/libs/tweedledum/tweedledum.hpp diff --git a/libs/tweedledum/utils/angle.hpp b/third_party/libs/tweedledum/utils/angle.hpp similarity index 100% rename from libs/tweedledum/utils/angle.hpp rename to third_party/libs/tweedledum/utils/angle.hpp diff --git a/libs/tweedledum/utils/bit_matrix_cm.hpp b/third_party/libs/tweedledum/utils/bit_matrix_cm.hpp similarity index 100% rename from libs/tweedledum/utils/bit_matrix_cm.hpp rename to third_party/libs/tweedledum/utils/bit_matrix_cm.hpp diff --git a/libs/tweedledum/utils/bit_matrix_rm.hpp b/third_party/libs/tweedledum/utils/bit_matrix_rm.hpp similarity index 100% rename from libs/tweedledum/utils/bit_matrix_rm.hpp rename to third_party/libs/tweedledum/utils/bit_matrix_rm.hpp diff --git a/libs/tweedledum/utils/dd/zdd.hpp b/third_party/libs/tweedledum/utils/dd/zdd.hpp similarity index 100% rename from libs/tweedledum/utils/dd/zdd.hpp rename to third_party/libs/tweedledum/utils/dd/zdd.hpp diff --git a/libs/tweedledum/utils/detail/bit_matrix.hpp b/third_party/libs/tweedledum/utils/detail/bit_matrix.hpp similarity index 100% rename from libs/tweedledum/utils/detail/bit_matrix.hpp rename to third_party/libs/tweedledum/utils/detail/bit_matrix.hpp diff --git a/libs/tweedledum/utils/device.hpp b/third_party/libs/tweedledum/utils/device.hpp similarity index 100% rename from libs/tweedledum/utils/device.hpp rename to third_party/libs/tweedledum/utils/device.hpp diff --git a/libs/tweedledum/utils/dynamic_bitset.hpp b/third_party/libs/tweedledum/utils/dynamic_bitset.hpp similarity index 100% rename from libs/tweedledum/utils/dynamic_bitset.hpp rename to third_party/libs/tweedledum/utils/dynamic_bitset.hpp diff --git a/libs/tweedledum/utils/foreach.hpp b/third_party/libs/tweedledum/utils/foreach.hpp similarity index 100% rename from libs/tweedledum/utils/foreach.hpp rename to third_party/libs/tweedledum/utils/foreach.hpp diff --git a/libs/tweedledum/utils/hash.hpp b/third_party/libs/tweedledum/utils/hash.hpp similarity index 100% rename from libs/tweedledum/utils/hash.hpp rename to third_party/libs/tweedledum/utils/hash.hpp diff --git a/libs/tweedledum/utils/node_map.hpp b/third_party/libs/tweedledum/utils/node_map.hpp similarity index 100% rename from libs/tweedledum/utils/node_map.hpp rename to third_party/libs/tweedledum/utils/node_map.hpp diff --git a/libs/tweedledum/utils/parity_terms.hpp b/third_party/libs/tweedledum/utils/parity_terms.hpp similarity index 100% rename from libs/tweedledum/utils/parity_terms.hpp rename to third_party/libs/tweedledum/utils/parity_terms.hpp diff --git a/libs/tweedledum/utils/permute.hpp b/third_party/libs/tweedledum/utils/permute.hpp similarity index 100% rename from libs/tweedledum/utils/permute.hpp rename to third_party/libs/tweedledum/utils/permute.hpp diff --git a/libs/tweedledum/utils/sat/cardinality.hpp b/third_party/libs/tweedledum/utils/sat/cardinality.hpp similarity index 100% rename from libs/tweedledum/utils/sat/cardinality.hpp rename to third_party/libs/tweedledum/utils/sat/cardinality.hpp diff --git a/libs/tweedledum/utils/sat/solver.hpp b/third_party/libs/tweedledum/utils/sat/solver.hpp similarity index 100% rename from libs/tweedledum/utils/sat/solver.hpp rename to third_party/libs/tweedledum/utils/sat/solver.hpp diff --git a/libs/tweedledum/utils/sat/types.hpp b/third_party/libs/tweedledum/utils/sat/types.hpp similarity index 100% rename from libs/tweedledum/utils/sat/types.hpp rename to third_party/libs/tweedledum/utils/sat/types.hpp diff --git a/libs/tweedledum/utils/stopwatch.hpp b/third_party/libs/tweedledum/utils/stopwatch.hpp similarity index 100% rename from libs/tweedledum/utils/stopwatch.hpp rename to third_party/libs/tweedledum/utils/stopwatch.hpp diff --git a/libs/tweedledum/views/depth_view.hpp b/third_party/libs/tweedledum/views/depth_view.hpp similarity index 100% rename from libs/tweedledum/views/depth_view.hpp rename to third_party/libs/tweedledum/views/depth_view.hpp diff --git a/libs/tweedledum/views/immutable_view.hpp b/third_party/libs/tweedledum/views/immutable_view.hpp similarity index 100% rename from libs/tweedledum/views/immutable_view.hpp rename to third_party/libs/tweedledum/views/immutable_view.hpp diff --git a/libs/tweedledum/views/mapping_view.hpp b/third_party/libs/tweedledum/views/mapping_view.hpp similarity index 100% rename from libs/tweedledum/views/mapping_view.hpp rename to third_party/libs/tweedledum/views/mapping_view.hpp diff --git a/libs/tweedledum/views/pathsum_view.hpp b/third_party/libs/tweedledum/views/pathsum_view.hpp similarity index 100% rename from libs/tweedledum/views/pathsum_view.hpp rename to third_party/libs/tweedledum/views/pathsum_view.hpp diff --git a/libs/tweedledum/views/stats_view.hpp b/third_party/libs/tweedledum/views/stats_view.hpp similarity index 100% rename from libs/tweedledum/views/stats_view.hpp rename to third_party/libs/tweedledum/views/stats_view.hpp diff --git a/libs/zlib/zconf.h b/third_party/libs/zlib/zconf.h similarity index 100% rename from libs/zlib/zconf.h rename to third_party/libs/zlib/zconf.h diff --git a/libs/zlib/zlib.h b/third_party/libs/zlib/zlib.h similarity index 100% rename from libs/zlib/zlib.h rename to third_party/libs/zlib/zlib.h diff --git a/tools/circ.cpp b/tools/circ.cpp index a7ab8544..1df26bcd 100644 --- a/tools/circ.cpp +++ b/tools/circ.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "output/cirq.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/device_generator.cpp b/tools/device_generator.cpp index 947f49ce..c9609014 100644 --- a/tools/device_generator.cpp +++ b/tools/device_generator.cpp @@ -26,7 +26,7 @@ #include -#include +#include #include "mapping/device.hpp" diff --git a/tools/grid_synth.cpp b/tools/grid_synth.cpp index f0d8cb80..d1c140f4 100644 --- a/tools/grid_synth.cpp +++ b/tools/grid_synth.cpp @@ -29,7 +29,7 @@ #include #include -#include +#include #include "grid_synth/exact_synthesis.hpp" #include "grid_synth/grid_synth.hpp" diff --git a/tools/inliner.cpp b/tools/inliner.cpp index 9d2d07d5..1ee14209 100644 --- a/tools/inliner.cpp +++ b/tools/inliner.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "qasmtools/parser/parser.hpp" #include "transformations/inline.hpp" diff --git a/tools/lattice_surgery.cpp b/tools/lattice_surgery.cpp index 2b7dc29a..c0cb0bb1 100644 --- a/tools/lattice_surgery.cpp +++ b/tools/lattice_surgery.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "output/lattice_surgery.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/mapper.cpp b/tools/mapper.cpp index 9659c468..173bc0f2 100644 --- a/tools/mapper.cpp +++ b/tools/mapper.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "qasmtools/parser/parser.hpp" #include "tools/qubit_estimator.hpp" diff --git a/tools/projectq.cpp b/tools/projectq.cpp index a53a2344..4446a188 100644 --- a/tools/projectq.cpp +++ b/tools/projectq.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "output/projectq.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/qasm_synth.cpp b/tools/qasm_synth.cpp index f4d3e16a..dc9def6a 100644 --- a/tools/qasm_synth.cpp +++ b/tools/qasm_synth.cpp @@ -26,7 +26,7 @@ #include -#include +#include #include "grid_synth/gmp_functions.hpp" #include "grid_synth/types.hpp" diff --git a/tools/qsharp.cpp b/tools/qsharp.cpp index 3f1922b3..05b152d3 100644 --- a/tools/qsharp.cpp +++ b/tools/qsharp.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "output/qsharp.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/quil.cpp b/tools/quil.cpp index dd28e66e..fee1aead 100644 --- a/tools/quil.cpp +++ b/tools/quil.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "output/quil.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/resource_estimator.cpp b/tools/resource_estimator.cpp index 7bdcbef3..1efafb77 100644 --- a/tools/resource_estimator.cpp +++ b/tools/resource_estimator.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "qasmtools/parser/parser.hpp" #include "tools/resource_estimator.hpp" diff --git a/tools/rotation_optimizer.cpp b/tools/rotation_optimizer.cpp index 13471aff..c106ae1f 100644 --- a/tools/rotation_optimizer.cpp +++ b/tools/rotation_optimizer.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "optimization/rotation_folding.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/simplifier.cpp b/tools/simplifier.cpp index a3e281af..5c9f3c29 100644 --- a/tools/simplifier.cpp +++ b/tools/simplifier.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "optimization/simplify.hpp" #include "qasmtools/parser/parser.hpp" From d17939519334032f12e76eeaa93c314824919b20 Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Mon, 27 Nov 2023 20:56:15 -0500 Subject: [PATCH 02/11] Update main.cpp --- staq/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/staq/main.cpp b/staq/main.cpp index f3c060b1..f3832805 100644 --- a/staq/main.cpp +++ b/staq/main.cpp @@ -26,7 +26,7 @@ #include -#include +#include #include "qasmtools/parser/parser.hpp" From 66c781ec8549eda0d1f4b96dbd291504fc1d997b Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Mon, 27 Nov 2023 23:05:30 -0500 Subject: [PATCH 03/11] Update staq_wrapper.cpp --- pystaq/staq_wrapper.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pystaq/staq_wrapper.cpp b/pystaq/staq_wrapper.cpp index 6718143b..408a799f 100644 --- a/pystaq/staq_wrapper.cpp +++ b/pystaq/staq_wrapper.cpp @@ -28,11 +28,11 @@ #define NOMINMAX #endif -#include -#include - #include +#include +#include + #include "qasmtools/parser/parser.hpp" #include "transformations/barrier_merge.hpp" From 683f682f94dc42f27596ffa70945b2cce7fdfe63 Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Mon, 27 Nov 2023 23:16:55 -0500 Subject: [PATCH 04/11] Update setup.py --- setup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index ea30dee4..e7deb1a1 100644 --- a/setup.py +++ b/setup.py @@ -7,12 +7,12 @@ import ctypes.util as ctu import platform # to learn the OS we're on -extra_compile_args = ["-Ilibs", "-Iinclude", "-Iqasmtools/include"] +extra_compile_args = ["-Ithird_party", "-Iinclude", "-Iqasmtools/include"] extra_links_args = [] def _load_shared_obj(name): - """Attempts to load native OQS library.""" + """Attempts to load shared library.""" paths = [] # search typical locations From e921468f808c214740e72a6176b1b1c77b18836d Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Tue, 28 Nov 2023 12:44:52 -0500 Subject: [PATCH 05/11] finalized --- .github/workflows/cmake.yml | 17 + CHANGES | 9 +- CMakeLists.txt | 14 +- INSTALL.md | 20 + examples/standalone/CMakeLists.txt | 16 + examples/standalone/src/main.cpp | 379 ++++++++++++++++++ include/mapping/device.hpp | 2 +- include/output/lattice_surgery.hpp | 2 +- include/synthesis/logic_synthesis.hpp | 12 +- .../libs => libs/third_party}/CLI/App.hpp | 0 .../libs => libs/third_party}/CLI/CLI.hpp | 0 .../libs => libs/third_party}/CLI/Config.hpp | 0 .../third_party}/CLI/ConfigFwd.hpp | 0 .../libs => libs/third_party}/CLI/Error.hpp | 0 .../third_party}/CLI/Formatter.hpp | 0 .../third_party}/CLI/FormatterFwd.hpp | 0 .../libs => libs/third_party}/CLI/Macros.hpp | 0 .../libs => libs/third_party}/CLI/Option.hpp | 0 .../libs => libs/third_party}/CLI/Split.hpp | 0 .../third_party}/CLI/StringTools.hpp | 0 .../libs => libs/third_party}/CLI/Timer.hpp | 0 .../third_party}/CLI/TypeTools.hpp | 0 .../third_party}/CLI/Validators.hpp | 0 .../libs => libs/third_party}/CLI/Version.hpp | 0 .../libs => libs/third_party}/CMakeLists.txt | 0 .../caterpillar/details/utils.hpp | 0 .../optimization/optimization_graph.hpp | 0 .../optimization/post_opt_esop.hpp | 0 .../third_party}/caterpillar/stg_gate.hpp | 0 .../caterpillar/synthesis/lhrs.hpp | 0 .../caterpillar/synthesis/sat.hpp | 0 .../caterpillar/synthesis/satbased_cnotrz.hpp | 0 .../caterpillar/synthesis/stg_to_mcx.hpp | 0 .../synthesis/strategies/action.hpp | 0 .../strategies/bennett_mapping_strategy.hpp | 0 .../strategies/best_fit_mapping_strategy.hpp | 0 .../strategies/eager_mapping_strategy.hpp | 0 .../synthesis/strategies/mapping_strategy.hpp | 0 .../strategies/pebbling_mapping_strategy.hpp | 0 .../strategies/xag_mapping_strategy.hpp | 0 .../verification/circuit_to_logic_network.hpp | 0 .../third_party}/easy/cli/commands/cover.hpp | 0 .../third_party}/easy/cli/commands/ec.hpp | 0 .../easy/cli/commands/exorlink.hpp | 0 .../easy/cli/commands/function.hpp | 0 .../easy/cli/commands/read_fns.hpp | 0 .../third_party}/easy/cli/commands/sort.hpp | 0 .../third_party}/easy/cli/commands/synth.hpp | 0 .../third_party}/easy/cli/stores/esop.hpp | 0 .../third_party}/easy/cli/stores/function.hpp | 0 .../libs => libs/third_party}/easy/easy.hpp | 0 .../third_party}/easy/esop/combine.hpp | 0 .../third_party}/easy/esop/constructors.hpp | 0 .../third_party}/easy/esop/cost.hpp | 0 .../easy/esop/cube_manipulators.hpp | 0 .../third_party}/easy/esop/cube_utils.hpp | 0 .../third_party}/easy/esop/esop.hpp | 0 .../third_party}/easy/esop/esop_from_pkrm.hpp | 0 .../third_party}/easy/esop/esop_from_pprm.hpp | 0 .../easy/esop/exact_synthesis.hpp | 0 .../third_party}/easy/esop/exorlink.hpp | 0 .../third_party}/easy/esop/exorlink4.def | 0 .../third_party}/easy/esop/exorlink5.def | 0 .../third_party}/easy/esop/exorlink6.def | 0 .../third_party}/easy/esop/helliwell.hpp | 0 .../third_party}/easy/esop/synthesis.hpp | 0 .../third_party}/easy/io/read_esop.hpp | 0 .../third_party}/easy/io/write_esop.hpp | 0 .../third_party}/easy/sat/cnf_writer.hpp | 0 .../third_party}/easy/sat/constraints.hpp | 0 .../third_party}/easy/sat/gauss.hpp | 0 .../third_party}/easy/sat/sat_solver.hpp | 0 .../easy/sat/xor_clauses_to_cnf.hpp | 0 .../third_party}/easy/sat2/cardinality.hpp | 0 .../third_party}/easy/sat2/cnf_from_xcnf.hpp | 0 .../third_party}/easy/sat2/core_utils.hpp | 0 .../third_party}/easy/sat2/maxsat.hpp | 0 .../third_party}/easy/sat2/sat_solver.hpp | 0 .../easy/utils/dynamic_bitset.hpp | 0 .../third_party}/easy/utils/stopwatch.hpp | 0 .../third_party}/easy/utils/string_utils.hpp | 0 .../third_party}/ez/direct_iterator.hpp | 0 .../libs => libs/third_party}/fmt/chrono.h | 0 .../libs => libs/third_party}/fmt/color.h | 0 .../libs => libs/third_party}/fmt/container.h | 0 .../libs => libs/third_party}/fmt/core.h | 0 .../third_party}/fmt/format-inl.h | 0 .../libs => libs/third_party}/fmt/format.cc | 0 .../libs => libs/third_party}/fmt/format.h | 0 .../libs => libs/third_party}/fmt/locale.h | 0 .../libs => libs/third_party}/fmt/ostream.cc | 0 .../libs => libs/third_party}/fmt/ostream.h | 0 .../libs => libs/third_party}/fmt/posix.cc | 0 .../libs => libs/third_party}/fmt/posix.h | 0 .../libs => libs/third_party}/fmt/printf.cc | 0 .../libs => libs/third_party}/fmt/printf.h | 0 .../libs => libs/third_party}/fmt/ranges.h | 0 .../libs => libs/third_party}/fmt/string.h | 0 .../libs => libs/third_party}/fmt/time.h | 0 .../third_party}/glucose/glucose.hpp | 0 .../third_party}/kitty/affine.hpp | 0 .../third_party}/kitty/algorithm.hpp | 0 .../third_party}/kitty/bit_operations.hpp | 0 .../libs => libs/third_party}/kitty/cnf.hpp | 0 .../third_party}/kitty/constructors.hpp | 0 .../libs => libs/third_party}/kitty/cube.hpp | 0 .../third_party}/kitty/decomposition.hpp | 0 .../third_party}/kitty/detail/constants.hpp | 0 .../kitty/detail/linear_constants.hpp | 0 .../third_party}/kitty/detail/mscfix.hpp | 0 .../third_party}/kitty/detail/utils.hpp | 0 .../kitty/dynamic_truth_table.hpp | 0 .../third_party}/kitty/enumeration.hpp | 0 .../libs => libs/third_party}/kitty/esop.hpp | 0 .../libs => libs/third_party}/kitty/hash.hpp | 0 .../third_party}/kitty/implicant.hpp | 0 .../libs => libs/third_party}/kitty/isop.hpp | 0 .../libs => libs/third_party}/kitty/kitty.hpp | 0 .../libs => libs/third_party}/kitty/npn.hpp | 0 .../third_party}/kitty/operations.hpp | 0 .../third_party}/kitty/operators.hpp | 0 .../third_party}/kitty/permutation.hpp | 0 .../libs => libs/third_party}/kitty/print.hpp | 0 .../third_party}/kitty/properties.hpp | 0 .../third_party}/kitty/spectral.hpp | 0 .../third_party}/kitty/static_truth_table.hpp | 0 .../third_party}/kitty/traits.hpp | 0 .../third_party}/lorina/aiger.hpp | 0 .../third_party}/lorina/bench.hpp | 0 .../libs => libs/third_party}/lorina/blif.hpp | 0 .../third_party}/lorina/common.hpp | 0 .../third_party}/lorina/detail/tokenizer.hpp | 0 .../third_party}/lorina/detail/utils.hpp | 0 .../third_party}/lorina/diagnostics.hpp | 0 .../third_party}/lorina/lorina.hpp | 0 .../libs => libs/third_party}/lorina/pla.hpp | 0 .../third_party}/lorina/verilog.hpp | 0 .../third_party}/lorina/verilog_regex.hpp | 0 .../mockturtle/algorithms/aig_resub.hpp | 0 .../mockturtle/algorithms/akers_synthesis.hpp | 0 .../mockturtle/algorithms/cell_window.hpp | 0 .../mockturtle/algorithms/cleanup.hpp | 0 .../mockturtle/algorithms/cnf.hpp | 0 .../mockturtle/algorithms/collapse_mapped.hpp | 0 .../mockturtle/algorithms/cut_enumeration.hpp | 0 .../algorithms/cut_enumeration/cnf_cut.hpp | 0 .../algorithms/cut_enumeration/gia_cut.hpp | 0 .../algorithms/cut_enumeration/mf_cut.hpp | 0 .../algorithms/cut_enumeration/spectr_cut.hpp | 0 .../mockturtle/algorithms/cut_rewriting.hpp | 0 .../algorithms/detail/mffc_utils.hpp | 0 .../mockturtle/algorithms/dont_cares.hpp | 0 .../algorithms/dsd_decomposition.hpp | 0 .../algorithms/equivalence_checking.hpp | 0 .../mockturtle/algorithms/gates_to_nodes.hpp | 0 .../mockturtle/algorithms/lut_mapping.hpp | 0 .../algorithms/mig_algebraic_rewriting.hpp | 0 .../mockturtle/algorithms/mig_resub.hpp | 0 .../mockturtle/algorithms/miter.hpp | 0 .../algorithms/node_resynthesis.hpp | 0 .../algorithms/node_resynthesis/akers.hpp | 0 .../algorithms/node_resynthesis/direct.hpp | 0 .../algorithms/node_resynthesis/exact.hpp | 0 .../algorithms/node_resynthesis/mig_npn.hpp | 0 .../algorithms/node_resynthesis/xag_minmc.hpp | 0 .../algorithms/node_resynthesis/xag_npn.hpp | 0 .../algorithms/node_resynthesis/xmg_npn.hpp | 0 .../mockturtle/algorithms/reconv_cut.hpp | 0 .../mockturtle/algorithms/reconv_cut2.hpp | 0 .../mockturtle/algorithms/refactoring.hpp | 0 .../mockturtle/algorithms/resubstitution.hpp | 0 .../mockturtle/algorithms/satlut_mapping.hpp | 0 .../mockturtle/algorithms/simulation.hpp | 0 .../algorithms/xmg_algebraic_rewriting.hpp | 0 .../mockturtle/generators/arithmetic.hpp | 0 .../mockturtle/generators/control.hpp | 0 .../generators/modular_arithmetic.hpp | 0 .../generators/random_logic_generator.hpp | 0 .../mockturtle/generators/sorting.hpp | 0 .../third_party}/mockturtle/interface.hpp | 0 .../mockturtle/io/aiger_reader.hpp | 0 .../mockturtle/io/bench_reader.hpp | 0 .../third_party}/mockturtle/io/pla_reader.hpp | 0 .../mockturtle/io/verilog_reader.hpp | 0 .../mockturtle/io/write_bench.hpp | 0 .../mockturtle/io/write_dimacs.hpp | 0 .../third_party}/mockturtle/io/write_dot.hpp | 0 .../mockturtle/io/write_verilog.hpp | 0 .../third_party}/mockturtle/mockturtle.hpp | 0 .../third_party}/mockturtle/networks/aig.hpp | 0 .../mockturtle/networks/detail/foreach.hpp | 0 .../mockturtle/networks/events.hpp | 0 .../third_party}/mockturtle/networks/klut.hpp | 0 .../third_party}/mockturtle/networks/mig.hpp | 0 .../mockturtle/networks/storage.hpp | 0 .../third_party}/mockturtle/networks/xag.hpp | 0 .../third_party}/mockturtle/networks/xmg.hpp | 0 .../mockturtle/properties/migcost.hpp | 0 .../third_party}/mockturtle/traits.hpp | 0 .../mockturtle/utils/algorithm.hpp | 0 .../third_party}/mockturtle/utils/cuts.hpp | 0 .../mockturtle/utils/mixed_radix.hpp | 0 .../mockturtle/utils/node_map.hpp | 0 .../mockturtle/utils/progress_bar.hpp | 0 .../mockturtle/utils/stopwatch.hpp | 0 .../mockturtle/utils/string_utils.hpp | 0 .../mockturtle/utils/truth_table_cache.hpp | 0 .../mockturtle/views/cut_view.hpp | 0 .../mockturtle/views/depth_view.hpp | 0 .../mockturtle/views/fanout_view.hpp | 0 .../mockturtle/views/fanout_view2.hpp | 0 .../mockturtle/views/immutable_view.hpp | 0 .../mockturtle/views/mapping_view.hpp | 0 .../mockturtle/views/mffc_view.hpp | 0 .../mockturtle/views/topo_view.hpp | 0 .../mockturtle/views/window_view.hpp | 0 .../third_party}/nlohmann/adl_serializer.hpp | 0 .../nlohmann/byte_container_with_subtype.hpp | 0 .../nlohmann/detail/conversions/from_json.hpp | 0 .../nlohmann/detail/conversions/to_chars.hpp | 0 .../nlohmann/detail/conversions/to_json.hpp | 0 .../nlohmann/detail/exceptions.hpp | 0 .../third_party}/nlohmann/detail/hash.hpp | 0 .../nlohmann/detail/input/binary_reader.hpp | 0 .../nlohmann/detail/input/input_adapters.hpp | 0 .../nlohmann/detail/input/json_sax.hpp | 0 .../nlohmann/detail/input/lexer.hpp | 0 .../nlohmann/detail/input/parser.hpp | 0 .../nlohmann/detail/input/position_t.hpp | 0 .../detail/iterators/internal_iterator.hpp | 0 .../nlohmann/detail/iterators/iter_impl.hpp | 0 .../detail/iterators/iteration_proxy.hpp | 0 .../detail/iterators/iterator_traits.hpp | 0 .../iterators/json_reverse_iterator.hpp | 0 .../detail/iterators/primitive_iterator.hpp | 0 .../nlohmann/detail/json_pointer.hpp | 0 .../third_party}/nlohmann/detail/json_ref.hpp | 0 .../nlohmann/detail/macro_scope.hpp | 0 .../nlohmann/detail/macro_unscope.hpp | 0 .../nlohmann/detail/meta/cpp_future.hpp | 0 .../nlohmann/detail/meta/detected.hpp | 0 .../nlohmann/detail/meta/identity_tag.hpp | 0 .../nlohmann/detail/meta/is_sax.hpp | 0 .../nlohmann/detail/meta/type_traits.hpp | 0 .../nlohmann/detail/meta/void_t.hpp | 0 .../nlohmann/detail/output/binary_writer.hpp | 0 .../detail/output/output_adapters.hpp | 0 .../nlohmann/detail/output/serializer.hpp | 0 .../nlohmann/detail/string_escape.hpp | 0 .../third_party}/nlohmann/detail/value_t.hpp | 0 .../third_party}/nlohmann/json.hpp | 0 .../third_party}/nlohmann/json_fwd.hpp | 0 .../third_party}/nlohmann/ordered_map.hpp | 0 .../nlohmann/thirdparty/hedley/hedley.hpp | 0 .../thirdparty/hedley/hedley_undef.hpp | 0 .../third_party}/pthreadwin32/pthread.h | 0 .../third_party}/pthreadwin32/sched.h | 0 .../third_party}/pthreadwin32/semaphore.h | 0 .../libs => libs/third_party}/pybind11/attr.h | 0 .../third_party}/pybind11/buffer_info.h | 0 .../libs => libs/third_party}/pybind11/cast.h | 0 .../third_party}/pybind11/chrono.h | 0 .../third_party}/pybind11/common.h | 0 .../third_party}/pybind11/complex.h | 0 .../third_party}/pybind11/detail/class.h | 0 .../third_party}/pybind11/detail/common.h | 0 .../third_party}/pybind11/detail/descr.h | 0 .../third_party}/pybind11/detail/init.h | 0 .../third_party}/pybind11/detail/internals.h | 0 .../pybind11/detail/type_caster_base.h | 0 .../third_party}/pybind11/detail/typeid.h | 0 .../third_party}/pybind11/eigen.h | 0 .../third_party}/pybind11/eigen/matrix.h | 0 .../third_party}/pybind11/eigen/tensor.h | 0 .../third_party}/pybind11/embed.h | 0 .../libs => libs/third_party}/pybind11/eval.h | 0 .../third_party}/pybind11/functional.h | 0 .../libs => libs/third_party}/pybind11/gil.h | 0 .../third_party}/pybind11/iostream.h | 0 .../third_party}/pybind11/numpy.h | 0 .../third_party}/pybind11/operators.h | 0 .../third_party}/pybind11/options.h | 0 .../third_party}/pybind11/pybind11.h | 0 .../third_party}/pybind11/pytypes.h | 0 .../libs => libs/third_party}/pybind11/stl.h | 0 .../third_party}/pybind11/stl/filesystem.h | 0 .../third_party}/pybind11/stl_bind.h | 0 .../libs => libs/third_party}/rang/rang.hpp | 0 .../libs => libs/third_party}/sparsepp/spp.h | 0 .../third_party}/sparsepp/spp_config.h | 0 .../third_party}/sparsepp/spp_dlalloc.h | 0 .../third_party}/sparsepp/spp_memory.h | 0 .../third_party}/sparsepp/spp_smartptr.h | 0 .../third_party}/sparsepp/spp_stdint.h | 0 .../third_party}/sparsepp/spp_timer.h | 0 .../third_party}/sparsepp/spp_traits.h | 0 .../third_party}/sparsepp/spp_utils.h | 0 .../algorithms/decomposition/barenco.hpp | 0 .../algorithms/decomposition/dt.hpp | 0 .../algorithms/decomposition/gates/ccccx.hpp | 0 .../algorithms/decomposition/gates/cccx.hpp | 0 .../algorithms/decomposition/gates/ccx.hpp | 0 .../algorithms/decomposition/gates/ccz.hpp | 0 .../decomposition/gates/database.hpp | 0 .../algorithms/generic/convert_to.hpp | 0 .../algorithms/generic/remove_marked.hpp | 0 .../tweedledum/algorithms/generic/rewrite.hpp | 0 .../algorithms/generic/shallow_duplicate.hpp | 0 .../tweedledum/algorithms/identify_rz.hpp | 0 .../tweedledum/algorithms/mapping/sat_map.hpp | 0 .../tweedledum/algorithms/mapping/zdd_map.hpp | 0 .../optimization/gate_cancellation.hpp | 0 .../algorithms/optimization/phase_folding.hpp | 0 .../simulation/simulate_classically.hpp | 0 .../algorithms/synthesis/cnot_patel.hpp | 0 .../tweedledum/algorithms/synthesis/dbs.hpp | 0 .../algorithms/synthesis/diagonal_synth.hpp | 0 .../algorithms/synthesis/esop_phase_synth.hpp | 0 .../algorithms/synthesis/gray_synth.hpp | 0 .../algorithms/synthesis/linear_synth.hpp | 0 .../tweedledum/algorithms/synthesis/stg.hpp | 0 .../tweedledum/algorithms/synthesis/tbs.hpp | 0 .../tweedledum/gates/gate_base.hpp | 0 .../tweedledum/gates/gate_lib.def | 0 .../tweedledum/gates/gate_lib.hpp | 0 .../tweedledum/gates/interface.hpp | 0 .../tweedledum/gates/io3_gate.hpp | 0 .../tweedledum/gates/mcmt_gate.hpp | 0 .../third_party}/tweedledum/io/dotqc.hpp | 0 .../third_party}/tweedledum/io/qasm.hpp | 0 .../third_party}/tweedledum/io/quil.hpp | 0 .../tweedledum/io/read_device.hpp | 0 .../third_party}/tweedledum/io/write_dot.hpp | 0 .../tweedledum/io/write_projectq.hpp | 0 .../third_party}/tweedledum/io/write_qpic.hpp | 0 .../tweedledum/io/write_quirk.hpp | 0 .../tweedledum/io/write_unicode.hpp | 0 .../tweedledum/networks/detail/storage.hpp | 0 .../tweedledum/networks/gg_network.hpp | 0 .../tweedledum/networks/interface.hpp | 0 .../tweedledum/networks/io_id.hpp | 0 .../tweedledum/networks/netlist.hpp | 0 .../third_party}/tweedledum/traits.hpp | 0 .../third_party}/tweedledum/tweedledum.hpp | 0 .../third_party}/tweedledum/utils/angle.hpp | 0 .../tweedledum/utils/bit_matrix_cm.hpp | 0 .../tweedledum/utils/bit_matrix_rm.hpp | 0 .../third_party}/tweedledum/utils/dd/zdd.hpp | 0 .../tweedledum/utils/detail/bit_matrix.hpp | 0 .../third_party}/tweedledum/utils/device.hpp | 0 .../tweedledum/utils/dynamic_bitset.hpp | 0 .../third_party}/tweedledum/utils/foreach.hpp | 0 .../third_party}/tweedledum/utils/hash.hpp | 0 .../tweedledum/utils/node_map.hpp | 0 .../tweedledum/utils/parity_terms.hpp | 0 .../third_party}/tweedledum/utils/permute.hpp | 0 .../tweedledum/utils/sat/cardinality.hpp | 0 .../tweedledum/utils/sat/solver.hpp | 0 .../tweedledum/utils/sat/types.hpp | 0 .../tweedledum/utils/stopwatch.hpp | 0 .../tweedledum/views/depth_view.hpp | 0 .../tweedledum/views/immutable_view.hpp | 0 .../tweedledum/views/mapping_view.hpp | 0 .../tweedledum/views/pathsum_view.hpp | 0 .../tweedledum/views/stats_view.hpp | 0 .../libs => libs/third_party}/zlib/zconf.h | 0 .../libs => libs/third_party}/zlib/zlib.h | 0 {examples => misc}/bad.qasm | 0 {examples => misc}/inline_test.qasm | 0 {examples => misc}/mapping_test.qasm | 0 {examples => misc}/multi-ancilla_test.qasm | 0 {examples => misc}/oracle_example.qasm | 0 .../oracle_example_expanded.qasm | 0 {qpus => misc/qpu_specs}/gen_ibm_singapore.sh | 0 {qpus => misc/qpu_specs}/gen_ibm_tokyo.sh | 0 {qpus => misc/qpu_specs}/gen_rigetti_agave.sh | 0 .../qpu_specs}/gen_rigetti_aspen4.sh | 0 {qpus => misc/qpu_specs}/gen_square_9q.sh | 0 {qpus => misc/qpu_specs}/ibm_singapore.json | 0 {qpus => misc/qpu_specs}/ibm_tokyo.json | 0 {qpus => misc/qpu_specs}/rigetti_agave.json | 0 {qpus => misc/qpu_specs}/rigetti_aspen4.json | 0 {qpus => misc/qpu_specs}/square_9q.json | 0 {examples => misc}/rz_test1.qasm | 0 {examples => misc}/rz_test2.qasm | 0 {examples => misc}/rz_test3.qasm | 0 {scripts => misc/scripts}/gridsynth2qasm.sh | 0 {scripts => misc/scripts}/s3_table_file.csv | 0 .../scripts}/staq_grid_synth2qasm.sh | 0 {examples => misc}/showcase.qasm | 0 {examples => misc}/staq_paper/add_3_5.qasm | 0 .../staq_paper/add_3_5_compiled.quil | 0 .../staq_paper/add_3_5_compiled_mapped.quil | 0 .../staq_paper/add_3_5_synthesized.qasm | 0 {examples => misc}/staq_paper/adder_4.v | 0 .../staq_paper/benchmarks/adder_8.qasm | 0 .../staq_paper/benchmarks/barenco_tof_10.qasm | 0 .../staq_paper/benchmarks/barenco_tof_3.qasm | 0 .../staq_paper/benchmarks/barenco_tof_4.qasm | 0 .../staq_paper/benchmarks/barenco_tof_5.qasm | 0 .../staq_paper/benchmarks/csla_mux_3.qasm | 0 .../staq_paper/benchmarks/csum_mux_9.qasm | 0 .../staq_paper/benchmarks/cycle_17_3.qasm | 0 .../staq_paper/benchmarks/gf2^10_mult.qasm | 0 .../staq_paper/benchmarks/gf2^128_mult.qasm | 0 .../staq_paper/benchmarks/gf2^16_mult.qasm | 0 .../staq_paper/benchmarks/gf2^256_mult.qasm | 0 .../staq_paper/benchmarks/gf2^32_mult.qasm | 0 .../staq_paper/benchmarks/gf2^4_mult.qasm | 0 .../staq_paper/benchmarks/gf2^5_mult.qasm | 0 .../staq_paper/benchmarks/gf2^64_mult.qasm | 0 .../staq_paper/benchmarks/gf2^6_mult.qasm | 0 .../staq_paper/benchmarks/gf2^7_mult.qasm | 0 .../staq_paper/benchmarks/gf2^8_mult.qasm | 0 .../staq_paper/benchmarks/gf2^9_mult.qasm | 0 .../staq_paper/benchmarks/grover_5.qasm | 0 .../staq_paper/benchmarks/ham15-high.qasm | 0 .../staq_paper/benchmarks/ham15-low.qasm | 0 .../staq_paper/benchmarks/ham15-med.qasm | 0 .../staq_paper/benchmarks/hwb10.qasm | 0 .../staq_paper/benchmarks/hwb11.qasm | 0 .../staq_paper/benchmarks/hwb12.qasm | 0 .../staq_paper/benchmarks/hwb6.qasm | 0 .../staq_paper/benchmarks/hwb8.qasm | 0 .../staq_paper/benchmarks/mod5_4.qasm | 0 .../staq_paper/benchmarks/mod_adder_1024.qasm | 0 .../benchmarks/mod_adder_1048576.qasm | 0 .../staq_paper/benchmarks/mod_mult_55.qasm | 0 .../staq_paper/benchmarks/mod_red_21.qasm | 0 .../staq_paper/benchmarks/qcla_adder_10.qasm | 0 .../staq_paper/benchmarks/qcla_com_7.qasm | 0 .../staq_paper/benchmarks/qcla_mod_7.qasm | 0 .../staq_paper/benchmarks/qft_4.qasm | 0 .../staq_paper/benchmarks/rc_adder_6.qasm | 0 .../staq_paper/benchmarks/tof_10.qasm | 0 .../staq_paper/benchmarks/tof_3.qasm | 0 .../staq_paper/benchmarks/tof_4.qasm | 0 .../staq_paper/benchmarks/tof_5.qasm | 0 .../staq_paper/benchmarks/vbe_adder_3.qasm | 0 {examples => misc}/staq_paper/run_qiskit.sh | 0 {examples => misc}/staq_paper/run_staq.sh | 0 {examples => misc}/teleport.qasm | 0 {examples => misc}/test.qasm | 0 {examples => misc}/toffoli_4.v | 0 pystaq/staq_wrapper.cpp | 4 +- {staq => src/staq}/CMakeLists.txt | 0 {staq => src/staq}/main.cpp | 2 +- {tools => src/tools}/CMakeLists.txt | 0 {tools => src/tools}/circ.cpp | 2 +- {tools => src/tools}/desugarer.cpp | 0 {tools => src/tools}/device_generator.cpp | 2 +- {tools => src/tools}/grid_synth.cpp | 2 +- {tools => src/tools}/inliner.cpp | 2 +- {tools => src/tools}/lattice_surgery.cpp | 2 +- {tools => src/tools}/mapper.cpp | 2 +- {tools => src/tools}/oracle_synthesizer.cpp | 0 {tools => src/tools}/projectq.cpp | 2 +- {tools => src/tools}/qasm_synth.cpp | 2 +- {tools => src/tools}/qsharp.cpp | 2 +- {tools => src/tools}/quil.cpp | 2 +- {tools => src/tools}/resource_estimator.cpp | 2 +- {tools => src/tools}/rotation_optimizer.cpp | 2 +- {tools => src/tools}/simplifier.cpp | 2 +- 463 files changed, 472 insertions(+), 31 deletions(-) create mode 100644 examples/standalone/CMakeLists.txt create mode 100644 examples/standalone/src/main.cpp rename {third_party/libs => libs/third_party}/CLI/App.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/CLI.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/Config.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/ConfigFwd.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/Error.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/Formatter.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/FormatterFwd.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/Macros.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/Option.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/Split.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/StringTools.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/Timer.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/TypeTools.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/Validators.hpp (100%) rename {third_party/libs => libs/third_party}/CLI/Version.hpp (100%) rename {third_party/libs => libs/third_party}/CMakeLists.txt (100%) rename {third_party/libs => libs/third_party}/caterpillar/details/utils.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/optimization/optimization_graph.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/optimization/post_opt_esop.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/stg_gate.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/lhrs.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/sat.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/satbased_cnotrz.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/stg_to_mcx.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/strategies/action.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/strategies/bennett_mapping_strategy.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/strategies/best_fit_mapping_strategy.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/strategies/eager_mapping_strategy.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/strategies/mapping_strategy.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/strategies/pebbling_mapping_strategy.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/synthesis/strategies/xag_mapping_strategy.hpp (100%) rename {third_party/libs => libs/third_party}/caterpillar/verification/circuit_to_logic_network.hpp (100%) rename {third_party/libs => libs/third_party}/easy/cli/commands/cover.hpp (100%) rename {third_party/libs => libs/third_party}/easy/cli/commands/ec.hpp (100%) rename {third_party/libs => libs/third_party}/easy/cli/commands/exorlink.hpp (100%) rename {third_party/libs => libs/third_party}/easy/cli/commands/function.hpp (100%) rename {third_party/libs => libs/third_party}/easy/cli/commands/read_fns.hpp (100%) rename {third_party/libs => libs/third_party}/easy/cli/commands/sort.hpp (100%) rename {third_party/libs => libs/third_party}/easy/cli/commands/synth.hpp (100%) rename {third_party/libs => libs/third_party}/easy/cli/stores/esop.hpp (100%) rename {third_party/libs => libs/third_party}/easy/cli/stores/function.hpp (100%) rename {third_party/libs => libs/third_party}/easy/easy.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/combine.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/constructors.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/cost.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/cube_manipulators.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/cube_utils.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/esop.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/esop_from_pkrm.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/esop_from_pprm.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/exact_synthesis.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/exorlink.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/exorlink4.def (100%) rename {third_party/libs => libs/third_party}/easy/esop/exorlink5.def (100%) rename {third_party/libs => libs/third_party}/easy/esop/exorlink6.def (100%) rename {third_party/libs => libs/third_party}/easy/esop/helliwell.hpp (100%) rename {third_party/libs => libs/third_party}/easy/esop/synthesis.hpp (100%) rename {third_party/libs => libs/third_party}/easy/io/read_esop.hpp (100%) rename {third_party/libs => libs/third_party}/easy/io/write_esop.hpp (100%) rename {third_party/libs => libs/third_party}/easy/sat/cnf_writer.hpp (100%) rename {third_party/libs => libs/third_party}/easy/sat/constraints.hpp (100%) rename {third_party/libs => libs/third_party}/easy/sat/gauss.hpp (100%) rename {third_party/libs => libs/third_party}/easy/sat/sat_solver.hpp (100%) rename {third_party/libs => libs/third_party}/easy/sat/xor_clauses_to_cnf.hpp (100%) rename {third_party/libs => libs/third_party}/easy/sat2/cardinality.hpp (100%) rename {third_party/libs => libs/third_party}/easy/sat2/cnf_from_xcnf.hpp (100%) rename {third_party/libs => libs/third_party}/easy/sat2/core_utils.hpp (100%) rename {third_party/libs => libs/third_party}/easy/sat2/maxsat.hpp (100%) rename {third_party/libs => libs/third_party}/easy/sat2/sat_solver.hpp (100%) rename {third_party/libs => libs/third_party}/easy/utils/dynamic_bitset.hpp (100%) rename {third_party/libs => libs/third_party}/easy/utils/stopwatch.hpp (100%) rename {third_party/libs => libs/third_party}/easy/utils/string_utils.hpp (100%) rename {third_party/libs => libs/third_party}/ez/direct_iterator.hpp (100%) rename {third_party/libs => libs/third_party}/fmt/chrono.h (100%) rename {third_party/libs => libs/third_party}/fmt/color.h (100%) rename {third_party/libs => libs/third_party}/fmt/container.h (100%) rename {third_party/libs => libs/third_party}/fmt/core.h (100%) rename {third_party/libs => libs/third_party}/fmt/format-inl.h (100%) rename {third_party/libs => libs/third_party}/fmt/format.cc (100%) rename {third_party/libs => libs/third_party}/fmt/format.h (100%) rename {third_party/libs => libs/third_party}/fmt/locale.h (100%) rename {third_party/libs => libs/third_party}/fmt/ostream.cc (100%) rename {third_party/libs => libs/third_party}/fmt/ostream.h (100%) rename {third_party/libs => libs/third_party}/fmt/posix.cc (100%) rename {third_party/libs => libs/third_party}/fmt/posix.h (100%) rename {third_party/libs => libs/third_party}/fmt/printf.cc (100%) rename {third_party/libs => libs/third_party}/fmt/printf.h (100%) rename {third_party/libs => libs/third_party}/fmt/ranges.h (100%) rename {third_party/libs => libs/third_party}/fmt/string.h (100%) rename {third_party/libs => libs/third_party}/fmt/time.h (100%) rename {third_party/libs => libs/third_party}/glucose/glucose.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/affine.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/algorithm.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/bit_operations.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/cnf.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/constructors.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/cube.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/decomposition.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/detail/constants.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/detail/linear_constants.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/detail/mscfix.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/detail/utils.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/dynamic_truth_table.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/enumeration.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/esop.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/hash.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/implicant.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/isop.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/kitty.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/npn.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/operations.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/operators.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/permutation.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/print.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/properties.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/spectral.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/static_truth_table.hpp (100%) rename {third_party/libs => libs/third_party}/kitty/traits.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/aiger.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/bench.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/blif.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/common.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/detail/tokenizer.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/detail/utils.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/diagnostics.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/lorina.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/pla.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/verilog.hpp (100%) rename {third_party/libs => libs/third_party}/lorina/verilog_regex.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/aig_resub.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/akers_synthesis.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/cell_window.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/cleanup.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/cnf.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/collapse_mapped.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/cut_enumeration.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/cut_enumeration/cnf_cut.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/cut_enumeration/gia_cut.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/cut_enumeration/mf_cut.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/cut_enumeration/spectr_cut.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/cut_rewriting.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/detail/mffc_utils.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/dont_cares.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/dsd_decomposition.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/equivalence_checking.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/gates_to_nodes.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/lut_mapping.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/mig_algebraic_rewriting.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/mig_resub.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/miter.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/node_resynthesis.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/node_resynthesis/akers.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/node_resynthesis/direct.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/node_resynthesis/exact.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/node_resynthesis/mig_npn.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/node_resynthesis/xag_minmc.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/node_resynthesis/xag_npn.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/node_resynthesis/xmg_npn.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/reconv_cut.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/reconv_cut2.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/refactoring.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/resubstitution.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/satlut_mapping.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/simulation.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/algorithms/xmg_algebraic_rewriting.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/generators/arithmetic.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/generators/control.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/generators/modular_arithmetic.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/generators/random_logic_generator.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/generators/sorting.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/interface.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/io/aiger_reader.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/io/bench_reader.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/io/pla_reader.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/io/verilog_reader.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/io/write_bench.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/io/write_dimacs.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/io/write_dot.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/io/write_verilog.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/mockturtle.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/networks/aig.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/networks/detail/foreach.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/networks/events.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/networks/klut.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/networks/mig.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/networks/storage.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/networks/xag.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/networks/xmg.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/properties/migcost.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/traits.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/utils/algorithm.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/utils/cuts.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/utils/mixed_radix.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/utils/node_map.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/utils/progress_bar.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/utils/stopwatch.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/utils/string_utils.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/utils/truth_table_cache.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/views/cut_view.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/views/depth_view.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/views/fanout_view.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/views/fanout_view2.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/views/immutable_view.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/views/mapping_view.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/views/mffc_view.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/views/topo_view.hpp (100%) rename {third_party/libs => libs/third_party}/mockturtle/views/window_view.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/adl_serializer.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/byte_container_with_subtype.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/conversions/from_json.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/conversions/to_chars.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/conversions/to_json.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/exceptions.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/hash.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/input/binary_reader.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/input/input_adapters.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/input/json_sax.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/input/lexer.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/input/parser.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/input/position_t.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/iterators/internal_iterator.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/iterators/iter_impl.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/iterators/iteration_proxy.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/iterators/iterator_traits.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/iterators/json_reverse_iterator.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/iterators/primitive_iterator.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/json_pointer.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/json_ref.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/macro_scope.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/macro_unscope.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/meta/cpp_future.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/meta/detected.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/meta/identity_tag.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/meta/is_sax.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/meta/type_traits.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/meta/void_t.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/output/binary_writer.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/output/output_adapters.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/output/serializer.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/string_escape.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/detail/value_t.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/json.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/json_fwd.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/ordered_map.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/thirdparty/hedley/hedley.hpp (100%) rename {third_party/libs => libs/third_party}/nlohmann/thirdparty/hedley/hedley_undef.hpp (100%) rename {third_party/libs => libs/third_party}/pthreadwin32/pthread.h (100%) rename {third_party/libs => libs/third_party}/pthreadwin32/sched.h (100%) rename {third_party/libs => libs/third_party}/pthreadwin32/semaphore.h (100%) rename {third_party/libs => libs/third_party}/pybind11/attr.h (100%) rename {third_party/libs => libs/third_party}/pybind11/buffer_info.h (100%) rename {third_party/libs => libs/third_party}/pybind11/cast.h (100%) rename {third_party/libs => libs/third_party}/pybind11/chrono.h (100%) rename {third_party/libs => libs/third_party}/pybind11/common.h (100%) rename {third_party/libs => libs/third_party}/pybind11/complex.h (100%) rename {third_party/libs => libs/third_party}/pybind11/detail/class.h (100%) rename {third_party/libs => libs/third_party}/pybind11/detail/common.h (100%) rename {third_party/libs => libs/third_party}/pybind11/detail/descr.h (100%) rename {third_party/libs => libs/third_party}/pybind11/detail/init.h (100%) rename {third_party/libs => libs/third_party}/pybind11/detail/internals.h (100%) rename {third_party/libs => libs/third_party}/pybind11/detail/type_caster_base.h (100%) rename {third_party/libs => libs/third_party}/pybind11/detail/typeid.h (100%) rename {third_party/libs => libs/third_party}/pybind11/eigen.h (100%) rename {third_party/libs => libs/third_party}/pybind11/eigen/matrix.h (100%) rename {third_party/libs => libs/third_party}/pybind11/eigen/tensor.h (100%) rename {third_party/libs => libs/third_party}/pybind11/embed.h (100%) rename {third_party/libs => libs/third_party}/pybind11/eval.h (100%) rename {third_party/libs => libs/third_party}/pybind11/functional.h (100%) rename {third_party/libs => libs/third_party}/pybind11/gil.h (100%) rename {third_party/libs => libs/third_party}/pybind11/iostream.h (100%) rename {third_party/libs => libs/third_party}/pybind11/numpy.h (100%) rename {third_party/libs => libs/third_party}/pybind11/operators.h (100%) rename {third_party/libs => libs/third_party}/pybind11/options.h (100%) rename {third_party/libs => libs/third_party}/pybind11/pybind11.h (100%) rename {third_party/libs => libs/third_party}/pybind11/pytypes.h (100%) rename {third_party/libs => libs/third_party}/pybind11/stl.h (100%) rename {third_party/libs => libs/third_party}/pybind11/stl/filesystem.h (100%) rename {third_party/libs => libs/third_party}/pybind11/stl_bind.h (100%) rename {third_party/libs => libs/third_party}/rang/rang.hpp (100%) rename {third_party/libs => libs/third_party}/sparsepp/spp.h (100%) rename {third_party/libs => libs/third_party}/sparsepp/spp_config.h (100%) rename {third_party/libs => libs/third_party}/sparsepp/spp_dlalloc.h (100%) rename {third_party/libs => libs/third_party}/sparsepp/spp_memory.h (100%) rename {third_party/libs => libs/third_party}/sparsepp/spp_smartptr.h (100%) rename {third_party/libs => libs/third_party}/sparsepp/spp_stdint.h (100%) rename {third_party/libs => libs/third_party}/sparsepp/spp_timer.h (100%) rename {third_party/libs => libs/third_party}/sparsepp/spp_traits.h (100%) rename {third_party/libs => libs/third_party}/sparsepp/spp_utils.h (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/decomposition/barenco.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/decomposition/dt.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/decomposition/gates/ccccx.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/decomposition/gates/cccx.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/decomposition/gates/ccx.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/decomposition/gates/ccz.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/decomposition/gates/database.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/generic/convert_to.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/generic/remove_marked.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/generic/rewrite.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/generic/shallow_duplicate.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/identify_rz.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/mapping/sat_map.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/mapping/zdd_map.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/optimization/gate_cancellation.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/optimization/phase_folding.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/simulation/simulate_classically.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/synthesis/cnot_patel.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/synthesis/dbs.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/synthesis/diagonal_synth.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/synthesis/esop_phase_synth.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/synthesis/gray_synth.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/synthesis/linear_synth.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/synthesis/stg.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/algorithms/synthesis/tbs.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/gates/gate_base.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/gates/gate_lib.def (100%) rename {third_party/libs => libs/third_party}/tweedledum/gates/gate_lib.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/gates/interface.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/gates/io3_gate.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/gates/mcmt_gate.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/io/dotqc.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/io/qasm.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/io/quil.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/io/read_device.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/io/write_dot.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/io/write_projectq.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/io/write_qpic.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/io/write_quirk.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/io/write_unicode.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/networks/detail/storage.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/networks/gg_network.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/networks/interface.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/networks/io_id.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/networks/netlist.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/traits.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/tweedledum.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/angle.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/bit_matrix_cm.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/bit_matrix_rm.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/dd/zdd.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/detail/bit_matrix.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/device.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/dynamic_bitset.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/foreach.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/hash.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/node_map.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/parity_terms.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/permute.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/sat/cardinality.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/sat/solver.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/sat/types.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/utils/stopwatch.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/views/depth_view.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/views/immutable_view.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/views/mapping_view.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/views/pathsum_view.hpp (100%) rename {third_party/libs => libs/third_party}/tweedledum/views/stats_view.hpp (100%) rename {third_party/libs => libs/third_party}/zlib/zconf.h (100%) rename {third_party/libs => libs/third_party}/zlib/zlib.h (100%) rename {examples => misc}/bad.qasm (100%) rename {examples => misc}/inline_test.qasm (100%) rename {examples => misc}/mapping_test.qasm (100%) rename {examples => misc}/multi-ancilla_test.qasm (100%) rename {examples => misc}/oracle_example.qasm (100%) rename {examples => misc}/oracle_example_expanded.qasm (100%) rename {qpus => misc/qpu_specs}/gen_ibm_singapore.sh (100%) rename {qpus => misc/qpu_specs}/gen_ibm_tokyo.sh (100%) rename {qpus => misc/qpu_specs}/gen_rigetti_agave.sh (100%) rename {qpus => misc/qpu_specs}/gen_rigetti_aspen4.sh (100%) rename {qpus => misc/qpu_specs}/gen_square_9q.sh (100%) rename {qpus => misc/qpu_specs}/ibm_singapore.json (100%) rename {qpus => misc/qpu_specs}/ibm_tokyo.json (100%) rename {qpus => misc/qpu_specs}/rigetti_agave.json (100%) rename {qpus => misc/qpu_specs}/rigetti_aspen4.json (100%) rename {qpus => misc/qpu_specs}/square_9q.json (100%) rename {examples => misc}/rz_test1.qasm (100%) rename {examples => misc}/rz_test2.qasm (100%) rename {examples => misc}/rz_test3.qasm (100%) rename {scripts => misc/scripts}/gridsynth2qasm.sh (100%) rename {scripts => misc/scripts}/s3_table_file.csv (100%) rename {scripts => misc/scripts}/staq_grid_synth2qasm.sh (100%) rename {examples => misc}/showcase.qasm (100%) rename {examples => misc}/staq_paper/add_3_5.qasm (100%) rename {examples => misc}/staq_paper/add_3_5_compiled.quil (100%) rename {examples => misc}/staq_paper/add_3_5_compiled_mapped.quil (100%) rename {examples => misc}/staq_paper/add_3_5_synthesized.qasm (100%) rename {examples => misc}/staq_paper/adder_4.v (100%) rename {examples => misc}/staq_paper/benchmarks/adder_8.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/barenco_tof_10.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/barenco_tof_3.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/barenco_tof_4.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/barenco_tof_5.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/csla_mux_3.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/csum_mux_9.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/cycle_17_3.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^10_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^128_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^16_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^256_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^32_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^4_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^5_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^64_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^6_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^7_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^8_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/gf2^9_mult.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/grover_5.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/ham15-high.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/ham15-low.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/ham15-med.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/hwb10.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/hwb11.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/hwb12.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/hwb6.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/hwb8.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/mod5_4.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/mod_adder_1024.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/mod_adder_1048576.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/mod_mult_55.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/mod_red_21.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/qcla_adder_10.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/qcla_com_7.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/qcla_mod_7.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/qft_4.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/rc_adder_6.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/tof_10.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/tof_3.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/tof_4.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/tof_5.qasm (100%) rename {examples => misc}/staq_paper/benchmarks/vbe_adder_3.qasm (100%) rename {examples => misc}/staq_paper/run_qiskit.sh (100%) rename {examples => misc}/staq_paper/run_staq.sh (100%) rename {examples => misc}/teleport.qasm (100%) rename {examples => misc}/test.qasm (100%) rename {examples => misc}/toffoli_4.v (100%) rename {staq => src/staq}/CMakeLists.txt (100%) rename {staq => src/staq}/main.cpp (99%) rename {tools => src/tools}/CMakeLists.txt (100%) rename {tools => src/tools}/circ.cpp (98%) rename {tools => src/tools}/desugarer.cpp (100%) rename {tools => src/tools}/device_generator.cpp (99%) rename {tools => src/tools}/grid_synth.cpp (99%) rename {tools => src/tools}/inliner.cpp (98%) rename {tools => src/tools}/lattice_surgery.cpp (98%) rename {tools => src/tools}/mapper.cpp (99%) rename {tools => src/tools}/oracle_synthesizer.cpp (100%) rename {tools => src/tools}/projectq.cpp (98%) rename {tools => src/tools}/qasm_synth.cpp (98%) rename {tools => src/tools}/qsharp.cpp (98%) rename {tools => src/tools}/quil.cpp (98%) rename {tools => src/tools}/resource_estimator.cpp (98%) rename {tools => src/tools}/rotation_optimizer.cpp (98%) rename {tools => src/tools}/simplifier.cpp (98%) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 77654204..515a7ee8 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -65,6 +65,23 @@ jobs: sudo cmake --install build fi + - name: Configure standalone example + run: | + cmake -S examples/standalone -B examples/standalone/build + + - name: Build standalone example + run: | + cmake --build examples/standalone/build --target standalone + + - name: Run standalone example + shell: bash + run: | + if [ "$RUNNER_OS" == "Windows" ]; then + ./examples/standalone/build/${{env.BUILD_TYPE}}/standalone.exe + else + ./examples/standalone/build/standalone + fi + - name: Build unit tests shell: bash run: | diff --git a/CHANGES b/CHANGES index 8f162b6a..079aab63 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,10 @@ +Pre-release + - Source code is now installing when `cmake --build build --target install` + - Renamed the "examples" directory to "misc" + - Moved "qpu_specs" and "scripts" directories to "misc" + - Added standalone source code example (requires staq installation) in the + "examples/standalone" directory + Version 3.3 - Implemented the grid synth rotation synthesizer algorithm https://arxiv.org/abs/1403.2975, enabled only when the GNU MP library is @@ -6,7 +13,7 @@ Version 3.3 Version 3.2.3 - 14 August 2023 - Minor bugfix in pystaq setup.py that prevented pip install from remote - - Docker update, see the ["docker/"] directory + - Docker update, see the ["docker"] directory Version 3.2.2 - 12 June 2023 - This is a maintenance release diff --git a/CMakeLists.txt b/CMakeLists.txt index 1413a9ec..bd564a2c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -38,10 +38,12 @@ if (MINGW OR CYGWIN) endif () #### Libs -include_directories(SYSTEM third_party/libs) +include_directories(SYSTEM libs/third_party) #### staq headers add_library(libstaq INTERFACE) +target_compile_definitions(libstaq INTERFACE -DSTAQ_VERSION_NUM=${STAQ_VERSION_NUM}) +target_compile_definitions(libstaq INTERFACE -DSTAQ_VERSION_STR="${STAQ_VERSION_STR}") target_include_directories(libstaq INTERFACE $ $) @@ -51,8 +53,8 @@ target_include_directories(libstaq INTERFACE $) #### 3rd party libs target_include_directories(libstaq INTERFACE - $ - $) + $ + $) #### Enable OpenQASM 2.0 Specs option(USE_OPENQASM2_SPECS "Use OpenQASM 2.0 standard instead of Qiskit gate specifications" OFF) @@ -66,11 +68,11 @@ endif () #### Compiler set(COMPILER "staq") -add_executable(${COMPILER} ${PROJECT_SOURCE_DIR}/staq/main.cpp) +add_executable(${COMPILER} ${PROJECT_SOURCE_DIR}/src/staq/main.cpp) target_link_libraries(${COMPILER} PUBLIC libstaq) #### Additional command line tools -add_subdirectory(tools) +add_subdirectory(src/tools) #### Unit testing include(cmake/staq_unit_tests.cmake) @@ -96,7 +98,7 @@ install(TARGETS ${COMPILER} DESTINATION ${CMAKE_INSTALL_BINDIR}) set(STAQ_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME}") install(DIRECTORY include/ DESTINATION ${STAQ_INSTALL_DIR}) install(DIRECTORY qasmtools/include/ DESTINATION ${STAQ_INSTALL_DIR}) -install(DIRECTORY third_party/libs/ DESTINATION ${STAQ_INSTALL_DIR}/libs) +install(DIRECTORY libs/third_party DESTINATION ${STAQ_INSTALL_DIR}) install(TARGETS libstaq EXPORT staq_targets) install(EXPORT staq_targets DESTINATION "lib/cmake/${PROJECT_NAME}") include(CMakePackageConfigHelpers) diff --git a/INSTALL.md b/INSTALL.md index a90a4d9b..cd882fd2 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -87,6 +87,26 @@ or in an Administrator Command Prompt (Windows) cmake --build build --target (un)install ``` +staq's source code will be installed in `/usr/local/include/staq` +(UNIX/UNIX-like systems), or in `C:\Program Files (x86)\staq` on Windows +systems. The paths may differ on your system. To use staq's sources, precede all +include paths by `staq`, i.e., + +```c++ +#include +``` + +Third party header-only libraries will need to be preceded by `third_party` when +including their corresponding header file, i.e., + +```c++ +#include +``` + +See the +[standalone example](https://github.com/softwareQinc/staq/tree/main/examples/standalone) +for more details. + --- ## macOS/Linux diff --git a/examples/standalone/CMakeLists.txt b/examples/standalone/CMakeLists.txt new file mode 100644 index 00000000..11917930 --- /dev/null +++ b/examples/standalone/CMakeLists.txt @@ -0,0 +1,16 @@ +cmake_minimum_required(VERSION 3.26) +project(standalone) +set(CMAKE_CXX_STANDARD 17) + +# If staq's installation path was non-standard, i.e., specified by +# +# cmake -B build -DCMAKE_INSTALL_PREFIX=/path/to/installed/staq +# +# then uncomment the following line and replace the installation path with yours + +# set(CMAKE_PREFIX_PATH "/path/to/installed/staq") + +find_package(staq REQUIRED) + +add_executable(standalone src/main.cpp) +target_link_libraries(standalone PUBLIC libstaq) diff --git a/examples/standalone/src/main.cpp b/examples/standalone/src/main.cpp new file mode 100644 index 00000000..cb3e263e --- /dev/null +++ b/examples/standalone/src/main.cpp @@ -0,0 +1,379 @@ +/* + * This file is part of staq. + * + * Copyright (c) 2019 - 2023 softwareQ Inc. All rights reserved. + * + * MIT License + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +#include + +#include + +#include + +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include +#include + +/** + * \brief Compiler passes + */ +enum class Pass { + desugar, + inln, + synth, + rotfold, + cnotsynth, + simplify, + map, + rewrite +}; + +/** + * \brief Command-line passes + */ +enum class Option { none, i, S, r, c, s, m, O1, O2, O3 }; +std::unordered_map cli_map{ + {"-i", Option::i}, {"--inline", Option::i}, + {"-S", Option::S}, {"--synthesize", Option::S}, + {"-r", Option::r}, {"--rotation-fold", Option::r}, + {"-c", Option::c}, {"--cnot-resynth", Option::c}, + {"-s", Option::s}, {"--simplify", Option::s}, + {"-m", Option::m}, {"--map-to-device", Option::m}, + {"-O1", Option::O1}, {"-O2", Option::O2}, + {"-O3", Option::O3}}; + +/* Passes aren't handled by CLI, so manually create help info */ +std::string make_passes_str(int width) { + std::ostringstream passes_str; + passes_str << "Compiler passes:\n"; + passes_str << std::setw(width) << std::left << " -i,--inline" + << "Inline all gates\n"; + passes_str << std::setw(width) << std::left << " -S,--synthesize" + << "Synthesize oracles defined by logic files\n"; + passes_str << std::setw(width) << std::left << " -r,--rotation-fold" + << "Apply a rotation optimization pass\n"; + passes_str << std::setw(width) << std::left << " -c,--cnot-resynth" + << "Apply a CNOT optimization pass\n"; + passes_str << std::setw(width) << std::left << " -s,--simplify" + << "Apply a simplification pass\n"; + passes_str << std::setw(width) << std::left << " -m,--map-to-device" + << "Map the circuit to a physical device\n"; + passes_str << std::setw(width) << std::left << " -O1" + << "Standard light optimization pass\n"; + passes_str << std::setw(width) << std::left << " -O2" + << "Standard heavy optimization pass\n"; + passes_str << std::setw(width) << std::left << " -O3" + << "Non-monotonic optimization pass"; + return passes_str.str(); +} + +int main(int argc, char** argv) { + using namespace staq; + using qasmtools::parser::parse_file; + + if (argc == 1) { + std::cout << "Usage: staq [PASSES/OPTIONS] FILE.qasm\n" + << "Run with --help for more information.\n"; + return 0; + } + + std::string ofile{}; + std::string format = "qasm"; + std::string layout_alg = "bestfit"; + std::string mapper = "steiner"; + bool disable_layout_optimization = false; + bool no_expand_registers = false; + bool no_rewrite_expressions = false; + bool evaluate_all = false; + std::string device_json; + std::string input_qasm; + + const std::string copyright_notice{ + "(c) 2019 - 2023 softwareQ Inc. All rights reserved."}; + CLI::App app{"staq -- A full-stack quantum processing toolkit\n" + + copyright_notice}; + app.get_formatter()->label("OPTIONS", "PASSES/OPTIONS"); + app.get_formatter()->label("REQUIRED", "(REQUIRED)"); + int width = 43; + app.get_formatter()->column_width(width); + app.footer(make_passes_str(width)); + app.allow_extras(); // later call app.remaining() for pass options + + app.add_flag_function( + "-v,--version", + [©right_notice](auto) { + std::cout << "staq version " << STAQ_VERSION_STR << "\n"; + std::cout << copyright_notice << "\n"; + exit(EXIT_SUCCESS); + }, + "Print version information"); + app.add_option("-o,--output", ofile, + "Output filename. Otherwise prints to stdout"); + app.add_option("-f,--format", format, "Output format. Default=" + format) + ->check(CLI::IsMember( + {"qasm", "quil", "projectq", "qsharp", "cirq", "resources"})); + app.add_option("-l,--layout", layout_alg, + "Initial device layout algorithm. Default=" + layout_alg) + ->check(CLI::IsMember({"linear", "eager", "bestfit"})); + app.add_option("-M,--mapping-alg", mapper, + "Algorithm to use for mapping CNOT gates. Default=" + mapper) + ->check(CLI::IsMember({"swap", "steiner"})); + app.add_flag( + "--disable-layout-optimization", disable_layout_optimization, + "Disables an expensive layout optimization pass when using the " + "steiner mapper"); + app.add_flag( + "--no-expand-registers", no_expand_registers, + "Disables expanding gates applied to registers rather than qubits"); + app.add_flag("--no-rewrite-expressions", no_rewrite_expressions, + "Disables evaluation of parameter expressions"); + app.add_flag("--evaluate-all", evaluate_all, + "Evaluate all expressions as real numbers"); + CLI::Option* device_opt = + app.add_option("-d,--device", device_json, "Device to map onto (.json)") + ->check(CLI::ExistingFile); + app.add_option("FILE.qasm", input_qasm, "OpenQASM circuit") + ->required() + ->check(CLI::ExistingFile); + + CLI11_PARSE(app, argc, argv); + + /* Passes */ + std::list passes; + if (!no_rewrite_expressions) { + passes.push_back(Pass::rewrite); + } + if (!no_expand_registers) { + passes.push_back(Pass::desugar); + } + for (auto& x : app.remaining()) { + switch (cli_map[x]) { + case Option::i: + passes.push_back(Pass::inln); + if (!no_rewrite_expressions) + passes.push_back(Pass::rewrite); + break; + case Option::S: + passes.push_back(Pass::synth); + break; + case Option::r: + passes.push_back(Pass::rotfold); + break; + case Option::c: + passes.push_back(Pass::cnotsynth); + break; + case Option::s: + passes.push_back(Pass::simplify); + break; + case Option::m: + passes.push_back(Pass::map); + break; + case Option::O1: + passes.push_back(Pass::rotfold); + passes.push_back(Pass::simplify); + break; + case Option::O2: + passes.push_back(Pass::inln); + passes.push_back(Pass::simplify); + passes.push_back(Pass::rotfold); + passes.push_back(Pass::simplify); + break; + case Option::O3: + passes.push_back(Pass::inln); + passes.push_back(Pass::simplify); + passes.push_back(Pass::rotfold); + passes.push_back(Pass::simplify); + passes.push_back(Pass::cnotsynth); + passes.push_back(Pass::simplify); + break; + /* Default */ + case Option::none: + std::cerr << "Unrecognized option \"" << x << "\"\n"; + } + } + + mapping::layout initial_layout; + std::optional> output_perm = std::nullopt; + bool do_lo = !disable_layout_optimization; + bool mapped = false; + + /* Deserialization */ + mapping::Device dev; + if (*device_opt) { + dev = mapping::parse_json(device_json); + } + + /* Parsing */ + auto prog = parse_file(input_qasm); + if (!prog) { + std::cerr << "Error: failed to parse \"" << input_qasm << "\"\n"; + return 0; + } + + /* Passes */ + for (auto pass : passes) + switch (pass) { + case Pass::desugar: + transformations::desugar(*prog); + transformations::merge_barriers(*prog); + break; + case Pass::inln: + transformations::inline_ast( + *prog, {true, transformations::default_overrides, "anc"}); + break; + case Pass::synth: + transformations::synthesize_oracles(*prog); + break; + case Pass::rotfold: + optimization::fold_rotations(*prog); + break; + case Pass::cnotsynth: + optimization::optimize_CNOT(*prog); + break; + case Pass::simplify: + transformations::expr_simplify(*prog); + optimization::simplify(*prog); + break; + case Pass::map: { + mapped = true; + + /* Inline fully first */ + transformations::inline_ast(*prog, {true, {}, "anc"}); + + /* Device */ + if (!(*device_opt)) { + dev = + mapping::fully_connected(tools::estimate_qubits(*prog)); + } + + /* Generate the layout */ + if (layout_alg == "linear") { + initial_layout = mapping::compute_basic_layout(dev, *prog); + } else if (layout_alg == "eager") { + initial_layout = mapping::compute_eager_layout(dev, *prog); + } else if (layout_alg == "bestfit") { + initial_layout = + mapping::compute_bestfit_layout(dev, *prog); + } + + /* (Optional) optimize the layout */ + if (mapper == "steiner" && do_lo) + optimize_steiner_layout(dev, initial_layout, *prog); + + /* Apply the layout */ + mapping::apply_layout(initial_layout, dev, *prog); + + /* Apply the mapping algorithm */ + if (mapper == "swap") { + output_perm = mapping::map_onto_device(dev, *prog); + } else if (mapper == "steiner") { + mapping::steiner_mapping(dev, *prog); + } + break; + } + case Pass::rewrite: + transformations::expr_simplify(*prog, evaluate_all); + break; + } + + /* Evaluating symbolic expressions */ + if (evaluate_all) { + transformations::expr_simplify(*prog, true); + } + + /* Output */ + if (format == "quil") { + if (ofile.empty()) + output::output_quil(*prog); + else + output::write_quil(*prog, ofile); + } else if (format == "projectq") { + if (ofile.empty()) + output::output_projectq(*prog); + else + output::write_projectq(*prog, ofile); + } else if (format == "qsharp") { + if (ofile.empty()) + output::output_qsharp(*prog); + else + output::write_qsharp(*prog, ofile); + } else if (format == "cirq") { + if (ofile.empty()) + output::output_cirq(*prog); + else + output::write_cirq(*prog, ofile); + } else if (format == "resources") { + auto count = tools::estimate_resources(*prog); + + if (ofile.empty()) { + std::cout << "Resource estimates for " << input_qasm << ":\n"; + for (auto& [name, num] : count) + std::cout << " " << name << ": " << num << "\n"; + } else { + std::ofstream os; + os.open(ofile); + + os << "Resource estimates for " << input_qasm << ":\n"; + for (auto& [name, num] : count) + os << " " << name << ": " << num << "\n"; + + os.close(); + } + } else { // qasm format + if (ofile.empty()) { + if (mapped) + dev.print_layout(initial_layout, std::cout, "// ", output_perm); + std::cout << *prog << "\n"; + } else { + std::ofstream os; + os.open(ofile); + + if (mapped) + dev.print_layout(initial_layout, os, "// ", output_perm); + os << *prog; + + os.close(); + } + } +} diff --git a/include/mapping/device.hpp b/include/mapping/device.hpp index f6e8dfa7..e09c0a6b 100644 --- a/include/mapping/device.hpp +++ b/include/mapping/device.hpp @@ -44,7 +44,7 @@ #include #include -#include +#include #include "qasmtools/ast/var.hpp" diff --git a/include/output/lattice_surgery.hpp b/include/output/lattice_surgery.hpp index f7ef6107..f5d1e0a0 100644 --- a/include/output/lattice_surgery.hpp +++ b/include/output/lattice_surgery.hpp @@ -38,7 +38,7 @@ #include #include -#include +#include #include "qasmtools/ast/ast.hpp" #include "qasmtools/utils/angle.hpp" diff --git a/include/synthesis/logic_synthesis.hpp b/include/synthesis/logic_synthesis.hpp index 4e2304b5..ce5a8116 100644 --- a/include/synthesis/logic_synthesis.hpp +++ b/include/synthesis/logic_synthesis.hpp @@ -37,12 +37,12 @@ #include #include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include #include "qasmtools/ast/stmt.hpp" #include "qasmtools/parser/position.hpp" diff --git a/third_party/libs/CLI/App.hpp b/libs/third_party/CLI/App.hpp similarity index 100% rename from third_party/libs/CLI/App.hpp rename to libs/third_party/CLI/App.hpp diff --git a/third_party/libs/CLI/CLI.hpp b/libs/third_party/CLI/CLI.hpp similarity index 100% rename from third_party/libs/CLI/CLI.hpp rename to libs/third_party/CLI/CLI.hpp diff --git a/third_party/libs/CLI/Config.hpp b/libs/third_party/CLI/Config.hpp similarity index 100% rename from third_party/libs/CLI/Config.hpp rename to libs/third_party/CLI/Config.hpp diff --git a/third_party/libs/CLI/ConfigFwd.hpp b/libs/third_party/CLI/ConfigFwd.hpp similarity index 100% rename from third_party/libs/CLI/ConfigFwd.hpp rename to libs/third_party/CLI/ConfigFwd.hpp diff --git a/third_party/libs/CLI/Error.hpp b/libs/third_party/CLI/Error.hpp similarity index 100% rename from third_party/libs/CLI/Error.hpp rename to libs/third_party/CLI/Error.hpp diff --git a/third_party/libs/CLI/Formatter.hpp b/libs/third_party/CLI/Formatter.hpp similarity index 100% rename from third_party/libs/CLI/Formatter.hpp rename to libs/third_party/CLI/Formatter.hpp diff --git a/third_party/libs/CLI/FormatterFwd.hpp b/libs/third_party/CLI/FormatterFwd.hpp similarity index 100% rename from third_party/libs/CLI/FormatterFwd.hpp rename to libs/third_party/CLI/FormatterFwd.hpp diff --git a/third_party/libs/CLI/Macros.hpp b/libs/third_party/CLI/Macros.hpp similarity index 100% rename from third_party/libs/CLI/Macros.hpp rename to libs/third_party/CLI/Macros.hpp diff --git a/third_party/libs/CLI/Option.hpp b/libs/third_party/CLI/Option.hpp similarity index 100% rename from third_party/libs/CLI/Option.hpp rename to libs/third_party/CLI/Option.hpp diff --git a/third_party/libs/CLI/Split.hpp b/libs/third_party/CLI/Split.hpp similarity index 100% rename from third_party/libs/CLI/Split.hpp rename to libs/third_party/CLI/Split.hpp diff --git a/third_party/libs/CLI/StringTools.hpp b/libs/third_party/CLI/StringTools.hpp similarity index 100% rename from third_party/libs/CLI/StringTools.hpp rename to libs/third_party/CLI/StringTools.hpp diff --git a/third_party/libs/CLI/Timer.hpp b/libs/third_party/CLI/Timer.hpp similarity index 100% rename from third_party/libs/CLI/Timer.hpp rename to libs/third_party/CLI/Timer.hpp diff --git a/third_party/libs/CLI/TypeTools.hpp b/libs/third_party/CLI/TypeTools.hpp similarity index 100% rename from third_party/libs/CLI/TypeTools.hpp rename to libs/third_party/CLI/TypeTools.hpp diff --git a/third_party/libs/CLI/Validators.hpp b/libs/third_party/CLI/Validators.hpp similarity index 100% rename from third_party/libs/CLI/Validators.hpp rename to libs/third_party/CLI/Validators.hpp diff --git a/third_party/libs/CLI/Version.hpp b/libs/third_party/CLI/Version.hpp similarity index 100% rename from third_party/libs/CLI/Version.hpp rename to libs/third_party/CLI/Version.hpp diff --git a/third_party/libs/CMakeLists.txt b/libs/third_party/CMakeLists.txt similarity index 100% rename from third_party/libs/CMakeLists.txt rename to libs/third_party/CMakeLists.txt diff --git a/third_party/libs/caterpillar/details/utils.hpp b/libs/third_party/caterpillar/details/utils.hpp similarity index 100% rename from third_party/libs/caterpillar/details/utils.hpp rename to libs/third_party/caterpillar/details/utils.hpp diff --git a/third_party/libs/caterpillar/optimization/optimization_graph.hpp b/libs/third_party/caterpillar/optimization/optimization_graph.hpp similarity index 100% rename from third_party/libs/caterpillar/optimization/optimization_graph.hpp rename to libs/third_party/caterpillar/optimization/optimization_graph.hpp diff --git a/third_party/libs/caterpillar/optimization/post_opt_esop.hpp b/libs/third_party/caterpillar/optimization/post_opt_esop.hpp similarity index 100% rename from third_party/libs/caterpillar/optimization/post_opt_esop.hpp rename to libs/third_party/caterpillar/optimization/post_opt_esop.hpp diff --git a/third_party/libs/caterpillar/stg_gate.hpp b/libs/third_party/caterpillar/stg_gate.hpp similarity index 100% rename from third_party/libs/caterpillar/stg_gate.hpp rename to libs/third_party/caterpillar/stg_gate.hpp diff --git a/third_party/libs/caterpillar/synthesis/lhrs.hpp b/libs/third_party/caterpillar/synthesis/lhrs.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/lhrs.hpp rename to libs/third_party/caterpillar/synthesis/lhrs.hpp diff --git a/third_party/libs/caterpillar/synthesis/sat.hpp b/libs/third_party/caterpillar/synthesis/sat.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/sat.hpp rename to libs/third_party/caterpillar/synthesis/sat.hpp diff --git a/third_party/libs/caterpillar/synthesis/satbased_cnotrz.hpp b/libs/third_party/caterpillar/synthesis/satbased_cnotrz.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/satbased_cnotrz.hpp rename to libs/third_party/caterpillar/synthesis/satbased_cnotrz.hpp diff --git a/third_party/libs/caterpillar/synthesis/stg_to_mcx.hpp b/libs/third_party/caterpillar/synthesis/stg_to_mcx.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/stg_to_mcx.hpp rename to libs/third_party/caterpillar/synthesis/stg_to_mcx.hpp diff --git a/third_party/libs/caterpillar/synthesis/strategies/action.hpp b/libs/third_party/caterpillar/synthesis/strategies/action.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/strategies/action.hpp rename to libs/third_party/caterpillar/synthesis/strategies/action.hpp diff --git a/third_party/libs/caterpillar/synthesis/strategies/bennett_mapping_strategy.hpp b/libs/third_party/caterpillar/synthesis/strategies/bennett_mapping_strategy.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/strategies/bennett_mapping_strategy.hpp rename to libs/third_party/caterpillar/synthesis/strategies/bennett_mapping_strategy.hpp diff --git a/third_party/libs/caterpillar/synthesis/strategies/best_fit_mapping_strategy.hpp b/libs/third_party/caterpillar/synthesis/strategies/best_fit_mapping_strategy.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/strategies/best_fit_mapping_strategy.hpp rename to libs/third_party/caterpillar/synthesis/strategies/best_fit_mapping_strategy.hpp diff --git a/third_party/libs/caterpillar/synthesis/strategies/eager_mapping_strategy.hpp b/libs/third_party/caterpillar/synthesis/strategies/eager_mapping_strategy.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/strategies/eager_mapping_strategy.hpp rename to libs/third_party/caterpillar/synthesis/strategies/eager_mapping_strategy.hpp diff --git a/third_party/libs/caterpillar/synthesis/strategies/mapping_strategy.hpp b/libs/third_party/caterpillar/synthesis/strategies/mapping_strategy.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/strategies/mapping_strategy.hpp rename to libs/third_party/caterpillar/synthesis/strategies/mapping_strategy.hpp diff --git a/third_party/libs/caterpillar/synthesis/strategies/pebbling_mapping_strategy.hpp b/libs/third_party/caterpillar/synthesis/strategies/pebbling_mapping_strategy.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/strategies/pebbling_mapping_strategy.hpp rename to libs/third_party/caterpillar/synthesis/strategies/pebbling_mapping_strategy.hpp diff --git a/third_party/libs/caterpillar/synthesis/strategies/xag_mapping_strategy.hpp b/libs/third_party/caterpillar/synthesis/strategies/xag_mapping_strategy.hpp similarity index 100% rename from third_party/libs/caterpillar/synthesis/strategies/xag_mapping_strategy.hpp rename to libs/third_party/caterpillar/synthesis/strategies/xag_mapping_strategy.hpp diff --git a/third_party/libs/caterpillar/verification/circuit_to_logic_network.hpp b/libs/third_party/caterpillar/verification/circuit_to_logic_network.hpp similarity index 100% rename from third_party/libs/caterpillar/verification/circuit_to_logic_network.hpp rename to libs/third_party/caterpillar/verification/circuit_to_logic_network.hpp diff --git a/third_party/libs/easy/cli/commands/cover.hpp b/libs/third_party/easy/cli/commands/cover.hpp similarity index 100% rename from third_party/libs/easy/cli/commands/cover.hpp rename to libs/third_party/easy/cli/commands/cover.hpp diff --git a/third_party/libs/easy/cli/commands/ec.hpp b/libs/third_party/easy/cli/commands/ec.hpp similarity index 100% rename from third_party/libs/easy/cli/commands/ec.hpp rename to libs/third_party/easy/cli/commands/ec.hpp diff --git a/third_party/libs/easy/cli/commands/exorlink.hpp b/libs/third_party/easy/cli/commands/exorlink.hpp similarity index 100% rename from third_party/libs/easy/cli/commands/exorlink.hpp rename to libs/third_party/easy/cli/commands/exorlink.hpp diff --git a/third_party/libs/easy/cli/commands/function.hpp b/libs/third_party/easy/cli/commands/function.hpp similarity index 100% rename from third_party/libs/easy/cli/commands/function.hpp rename to libs/third_party/easy/cli/commands/function.hpp diff --git a/third_party/libs/easy/cli/commands/read_fns.hpp b/libs/third_party/easy/cli/commands/read_fns.hpp similarity index 100% rename from third_party/libs/easy/cli/commands/read_fns.hpp rename to libs/third_party/easy/cli/commands/read_fns.hpp diff --git a/third_party/libs/easy/cli/commands/sort.hpp b/libs/third_party/easy/cli/commands/sort.hpp similarity index 100% rename from third_party/libs/easy/cli/commands/sort.hpp rename to libs/third_party/easy/cli/commands/sort.hpp diff --git a/third_party/libs/easy/cli/commands/synth.hpp b/libs/third_party/easy/cli/commands/synth.hpp similarity index 100% rename from third_party/libs/easy/cli/commands/synth.hpp rename to libs/third_party/easy/cli/commands/synth.hpp diff --git a/third_party/libs/easy/cli/stores/esop.hpp b/libs/third_party/easy/cli/stores/esop.hpp similarity index 100% rename from third_party/libs/easy/cli/stores/esop.hpp rename to libs/third_party/easy/cli/stores/esop.hpp diff --git a/third_party/libs/easy/cli/stores/function.hpp b/libs/third_party/easy/cli/stores/function.hpp similarity index 100% rename from third_party/libs/easy/cli/stores/function.hpp rename to libs/third_party/easy/cli/stores/function.hpp diff --git a/third_party/libs/easy/easy.hpp b/libs/third_party/easy/easy.hpp similarity index 100% rename from third_party/libs/easy/easy.hpp rename to libs/third_party/easy/easy.hpp diff --git a/third_party/libs/easy/esop/combine.hpp b/libs/third_party/easy/esop/combine.hpp similarity index 100% rename from third_party/libs/easy/esop/combine.hpp rename to libs/third_party/easy/esop/combine.hpp diff --git a/third_party/libs/easy/esop/constructors.hpp b/libs/third_party/easy/esop/constructors.hpp similarity index 100% rename from third_party/libs/easy/esop/constructors.hpp rename to libs/third_party/easy/esop/constructors.hpp diff --git a/third_party/libs/easy/esop/cost.hpp b/libs/third_party/easy/esop/cost.hpp similarity index 100% rename from third_party/libs/easy/esop/cost.hpp rename to libs/third_party/easy/esop/cost.hpp diff --git a/third_party/libs/easy/esop/cube_manipulators.hpp b/libs/third_party/easy/esop/cube_manipulators.hpp similarity index 100% rename from third_party/libs/easy/esop/cube_manipulators.hpp rename to libs/third_party/easy/esop/cube_manipulators.hpp diff --git a/third_party/libs/easy/esop/cube_utils.hpp b/libs/third_party/easy/esop/cube_utils.hpp similarity index 100% rename from third_party/libs/easy/esop/cube_utils.hpp rename to libs/third_party/easy/esop/cube_utils.hpp diff --git a/third_party/libs/easy/esop/esop.hpp b/libs/third_party/easy/esop/esop.hpp similarity index 100% rename from third_party/libs/easy/esop/esop.hpp rename to libs/third_party/easy/esop/esop.hpp diff --git a/third_party/libs/easy/esop/esop_from_pkrm.hpp b/libs/third_party/easy/esop/esop_from_pkrm.hpp similarity index 100% rename from third_party/libs/easy/esop/esop_from_pkrm.hpp rename to libs/third_party/easy/esop/esop_from_pkrm.hpp diff --git a/third_party/libs/easy/esop/esop_from_pprm.hpp b/libs/third_party/easy/esop/esop_from_pprm.hpp similarity index 100% rename from third_party/libs/easy/esop/esop_from_pprm.hpp rename to libs/third_party/easy/esop/esop_from_pprm.hpp diff --git a/third_party/libs/easy/esop/exact_synthesis.hpp b/libs/third_party/easy/esop/exact_synthesis.hpp similarity index 100% rename from third_party/libs/easy/esop/exact_synthesis.hpp rename to libs/third_party/easy/esop/exact_synthesis.hpp diff --git a/third_party/libs/easy/esop/exorlink.hpp b/libs/third_party/easy/esop/exorlink.hpp similarity index 100% rename from third_party/libs/easy/esop/exorlink.hpp rename to libs/third_party/easy/esop/exorlink.hpp diff --git a/third_party/libs/easy/esop/exorlink4.def b/libs/third_party/easy/esop/exorlink4.def similarity index 100% rename from third_party/libs/easy/esop/exorlink4.def rename to libs/third_party/easy/esop/exorlink4.def diff --git a/third_party/libs/easy/esop/exorlink5.def b/libs/third_party/easy/esop/exorlink5.def similarity index 100% rename from third_party/libs/easy/esop/exorlink5.def rename to libs/third_party/easy/esop/exorlink5.def diff --git a/third_party/libs/easy/esop/exorlink6.def b/libs/third_party/easy/esop/exorlink6.def similarity index 100% rename from third_party/libs/easy/esop/exorlink6.def rename to libs/third_party/easy/esop/exorlink6.def diff --git a/third_party/libs/easy/esop/helliwell.hpp b/libs/third_party/easy/esop/helliwell.hpp similarity index 100% rename from third_party/libs/easy/esop/helliwell.hpp rename to libs/third_party/easy/esop/helliwell.hpp diff --git a/third_party/libs/easy/esop/synthesis.hpp b/libs/third_party/easy/esop/synthesis.hpp similarity index 100% rename from third_party/libs/easy/esop/synthesis.hpp rename to libs/third_party/easy/esop/synthesis.hpp diff --git a/third_party/libs/easy/io/read_esop.hpp b/libs/third_party/easy/io/read_esop.hpp similarity index 100% rename from third_party/libs/easy/io/read_esop.hpp rename to libs/third_party/easy/io/read_esop.hpp diff --git a/third_party/libs/easy/io/write_esop.hpp b/libs/third_party/easy/io/write_esop.hpp similarity index 100% rename from third_party/libs/easy/io/write_esop.hpp rename to libs/third_party/easy/io/write_esop.hpp diff --git a/third_party/libs/easy/sat/cnf_writer.hpp b/libs/third_party/easy/sat/cnf_writer.hpp similarity index 100% rename from third_party/libs/easy/sat/cnf_writer.hpp rename to libs/third_party/easy/sat/cnf_writer.hpp diff --git a/third_party/libs/easy/sat/constraints.hpp b/libs/third_party/easy/sat/constraints.hpp similarity index 100% rename from third_party/libs/easy/sat/constraints.hpp rename to libs/third_party/easy/sat/constraints.hpp diff --git a/third_party/libs/easy/sat/gauss.hpp b/libs/third_party/easy/sat/gauss.hpp similarity index 100% rename from third_party/libs/easy/sat/gauss.hpp rename to libs/third_party/easy/sat/gauss.hpp diff --git a/third_party/libs/easy/sat/sat_solver.hpp b/libs/third_party/easy/sat/sat_solver.hpp similarity index 100% rename from third_party/libs/easy/sat/sat_solver.hpp rename to libs/third_party/easy/sat/sat_solver.hpp diff --git a/third_party/libs/easy/sat/xor_clauses_to_cnf.hpp b/libs/third_party/easy/sat/xor_clauses_to_cnf.hpp similarity index 100% rename from third_party/libs/easy/sat/xor_clauses_to_cnf.hpp rename to libs/third_party/easy/sat/xor_clauses_to_cnf.hpp diff --git a/third_party/libs/easy/sat2/cardinality.hpp b/libs/third_party/easy/sat2/cardinality.hpp similarity index 100% rename from third_party/libs/easy/sat2/cardinality.hpp rename to libs/third_party/easy/sat2/cardinality.hpp diff --git a/third_party/libs/easy/sat2/cnf_from_xcnf.hpp b/libs/third_party/easy/sat2/cnf_from_xcnf.hpp similarity index 100% rename from third_party/libs/easy/sat2/cnf_from_xcnf.hpp rename to libs/third_party/easy/sat2/cnf_from_xcnf.hpp diff --git a/third_party/libs/easy/sat2/core_utils.hpp b/libs/third_party/easy/sat2/core_utils.hpp similarity index 100% rename from third_party/libs/easy/sat2/core_utils.hpp rename to libs/third_party/easy/sat2/core_utils.hpp diff --git a/third_party/libs/easy/sat2/maxsat.hpp b/libs/third_party/easy/sat2/maxsat.hpp similarity index 100% rename from third_party/libs/easy/sat2/maxsat.hpp rename to libs/third_party/easy/sat2/maxsat.hpp diff --git a/third_party/libs/easy/sat2/sat_solver.hpp b/libs/third_party/easy/sat2/sat_solver.hpp similarity index 100% rename from third_party/libs/easy/sat2/sat_solver.hpp rename to libs/third_party/easy/sat2/sat_solver.hpp diff --git a/third_party/libs/easy/utils/dynamic_bitset.hpp b/libs/third_party/easy/utils/dynamic_bitset.hpp similarity index 100% rename from third_party/libs/easy/utils/dynamic_bitset.hpp rename to libs/third_party/easy/utils/dynamic_bitset.hpp diff --git a/third_party/libs/easy/utils/stopwatch.hpp b/libs/third_party/easy/utils/stopwatch.hpp similarity index 100% rename from third_party/libs/easy/utils/stopwatch.hpp rename to libs/third_party/easy/utils/stopwatch.hpp diff --git a/third_party/libs/easy/utils/string_utils.hpp b/libs/third_party/easy/utils/string_utils.hpp similarity index 100% rename from third_party/libs/easy/utils/string_utils.hpp rename to libs/third_party/easy/utils/string_utils.hpp diff --git a/third_party/libs/ez/direct_iterator.hpp b/libs/third_party/ez/direct_iterator.hpp similarity index 100% rename from third_party/libs/ez/direct_iterator.hpp rename to libs/third_party/ez/direct_iterator.hpp diff --git a/third_party/libs/fmt/chrono.h b/libs/third_party/fmt/chrono.h similarity index 100% rename from third_party/libs/fmt/chrono.h rename to libs/third_party/fmt/chrono.h diff --git a/third_party/libs/fmt/color.h b/libs/third_party/fmt/color.h similarity index 100% rename from third_party/libs/fmt/color.h rename to libs/third_party/fmt/color.h diff --git a/third_party/libs/fmt/container.h b/libs/third_party/fmt/container.h similarity index 100% rename from third_party/libs/fmt/container.h rename to libs/third_party/fmt/container.h diff --git a/third_party/libs/fmt/core.h b/libs/third_party/fmt/core.h similarity index 100% rename from third_party/libs/fmt/core.h rename to libs/third_party/fmt/core.h diff --git a/third_party/libs/fmt/format-inl.h b/libs/third_party/fmt/format-inl.h similarity index 100% rename from third_party/libs/fmt/format-inl.h rename to libs/third_party/fmt/format-inl.h diff --git a/third_party/libs/fmt/format.cc b/libs/third_party/fmt/format.cc similarity index 100% rename from third_party/libs/fmt/format.cc rename to libs/third_party/fmt/format.cc diff --git a/third_party/libs/fmt/format.h b/libs/third_party/fmt/format.h similarity index 100% rename from third_party/libs/fmt/format.h rename to libs/third_party/fmt/format.h diff --git a/third_party/libs/fmt/locale.h b/libs/third_party/fmt/locale.h similarity index 100% rename from third_party/libs/fmt/locale.h rename to libs/third_party/fmt/locale.h diff --git a/third_party/libs/fmt/ostream.cc b/libs/third_party/fmt/ostream.cc similarity index 100% rename from third_party/libs/fmt/ostream.cc rename to libs/third_party/fmt/ostream.cc diff --git a/third_party/libs/fmt/ostream.h b/libs/third_party/fmt/ostream.h similarity index 100% rename from third_party/libs/fmt/ostream.h rename to libs/third_party/fmt/ostream.h diff --git a/third_party/libs/fmt/posix.cc b/libs/third_party/fmt/posix.cc similarity index 100% rename from third_party/libs/fmt/posix.cc rename to libs/third_party/fmt/posix.cc diff --git a/third_party/libs/fmt/posix.h b/libs/third_party/fmt/posix.h similarity index 100% rename from third_party/libs/fmt/posix.h rename to libs/third_party/fmt/posix.h diff --git a/third_party/libs/fmt/printf.cc b/libs/third_party/fmt/printf.cc similarity index 100% rename from third_party/libs/fmt/printf.cc rename to libs/third_party/fmt/printf.cc diff --git a/third_party/libs/fmt/printf.h b/libs/third_party/fmt/printf.h similarity index 100% rename from third_party/libs/fmt/printf.h rename to libs/third_party/fmt/printf.h diff --git a/third_party/libs/fmt/ranges.h b/libs/third_party/fmt/ranges.h similarity index 100% rename from third_party/libs/fmt/ranges.h rename to libs/third_party/fmt/ranges.h diff --git a/third_party/libs/fmt/string.h b/libs/third_party/fmt/string.h similarity index 100% rename from third_party/libs/fmt/string.h rename to libs/third_party/fmt/string.h diff --git a/third_party/libs/fmt/time.h b/libs/third_party/fmt/time.h similarity index 100% rename from third_party/libs/fmt/time.h rename to libs/third_party/fmt/time.h diff --git a/third_party/libs/glucose/glucose.hpp b/libs/third_party/glucose/glucose.hpp similarity index 100% rename from third_party/libs/glucose/glucose.hpp rename to libs/third_party/glucose/glucose.hpp diff --git a/third_party/libs/kitty/affine.hpp b/libs/third_party/kitty/affine.hpp similarity index 100% rename from third_party/libs/kitty/affine.hpp rename to libs/third_party/kitty/affine.hpp diff --git a/third_party/libs/kitty/algorithm.hpp b/libs/third_party/kitty/algorithm.hpp similarity index 100% rename from third_party/libs/kitty/algorithm.hpp rename to libs/third_party/kitty/algorithm.hpp diff --git a/third_party/libs/kitty/bit_operations.hpp b/libs/third_party/kitty/bit_operations.hpp similarity index 100% rename from third_party/libs/kitty/bit_operations.hpp rename to libs/third_party/kitty/bit_operations.hpp diff --git a/third_party/libs/kitty/cnf.hpp b/libs/third_party/kitty/cnf.hpp similarity index 100% rename from third_party/libs/kitty/cnf.hpp rename to libs/third_party/kitty/cnf.hpp diff --git a/third_party/libs/kitty/constructors.hpp b/libs/third_party/kitty/constructors.hpp similarity index 100% rename from third_party/libs/kitty/constructors.hpp rename to libs/third_party/kitty/constructors.hpp diff --git a/third_party/libs/kitty/cube.hpp b/libs/third_party/kitty/cube.hpp similarity index 100% rename from third_party/libs/kitty/cube.hpp rename to libs/third_party/kitty/cube.hpp diff --git a/third_party/libs/kitty/decomposition.hpp b/libs/third_party/kitty/decomposition.hpp similarity index 100% rename from third_party/libs/kitty/decomposition.hpp rename to libs/third_party/kitty/decomposition.hpp diff --git a/third_party/libs/kitty/detail/constants.hpp b/libs/third_party/kitty/detail/constants.hpp similarity index 100% rename from third_party/libs/kitty/detail/constants.hpp rename to libs/third_party/kitty/detail/constants.hpp diff --git a/third_party/libs/kitty/detail/linear_constants.hpp b/libs/third_party/kitty/detail/linear_constants.hpp similarity index 100% rename from third_party/libs/kitty/detail/linear_constants.hpp rename to libs/third_party/kitty/detail/linear_constants.hpp diff --git a/third_party/libs/kitty/detail/mscfix.hpp b/libs/third_party/kitty/detail/mscfix.hpp similarity index 100% rename from third_party/libs/kitty/detail/mscfix.hpp rename to libs/third_party/kitty/detail/mscfix.hpp diff --git a/third_party/libs/kitty/detail/utils.hpp b/libs/third_party/kitty/detail/utils.hpp similarity index 100% rename from third_party/libs/kitty/detail/utils.hpp rename to libs/third_party/kitty/detail/utils.hpp diff --git a/third_party/libs/kitty/dynamic_truth_table.hpp b/libs/third_party/kitty/dynamic_truth_table.hpp similarity index 100% rename from third_party/libs/kitty/dynamic_truth_table.hpp rename to libs/third_party/kitty/dynamic_truth_table.hpp diff --git a/third_party/libs/kitty/enumeration.hpp b/libs/third_party/kitty/enumeration.hpp similarity index 100% rename from third_party/libs/kitty/enumeration.hpp rename to libs/third_party/kitty/enumeration.hpp diff --git a/third_party/libs/kitty/esop.hpp b/libs/third_party/kitty/esop.hpp similarity index 100% rename from third_party/libs/kitty/esop.hpp rename to libs/third_party/kitty/esop.hpp diff --git a/third_party/libs/kitty/hash.hpp b/libs/third_party/kitty/hash.hpp similarity index 100% rename from third_party/libs/kitty/hash.hpp rename to libs/third_party/kitty/hash.hpp diff --git a/third_party/libs/kitty/implicant.hpp b/libs/third_party/kitty/implicant.hpp similarity index 100% rename from third_party/libs/kitty/implicant.hpp rename to libs/third_party/kitty/implicant.hpp diff --git a/third_party/libs/kitty/isop.hpp b/libs/third_party/kitty/isop.hpp similarity index 100% rename from third_party/libs/kitty/isop.hpp rename to libs/third_party/kitty/isop.hpp diff --git a/third_party/libs/kitty/kitty.hpp b/libs/third_party/kitty/kitty.hpp similarity index 100% rename from third_party/libs/kitty/kitty.hpp rename to libs/third_party/kitty/kitty.hpp diff --git a/third_party/libs/kitty/npn.hpp b/libs/third_party/kitty/npn.hpp similarity index 100% rename from third_party/libs/kitty/npn.hpp rename to libs/third_party/kitty/npn.hpp diff --git a/third_party/libs/kitty/operations.hpp b/libs/third_party/kitty/operations.hpp similarity index 100% rename from third_party/libs/kitty/operations.hpp rename to libs/third_party/kitty/operations.hpp diff --git a/third_party/libs/kitty/operators.hpp b/libs/third_party/kitty/operators.hpp similarity index 100% rename from third_party/libs/kitty/operators.hpp rename to libs/third_party/kitty/operators.hpp diff --git a/third_party/libs/kitty/permutation.hpp b/libs/third_party/kitty/permutation.hpp similarity index 100% rename from third_party/libs/kitty/permutation.hpp rename to libs/third_party/kitty/permutation.hpp diff --git a/third_party/libs/kitty/print.hpp b/libs/third_party/kitty/print.hpp similarity index 100% rename from third_party/libs/kitty/print.hpp rename to libs/third_party/kitty/print.hpp diff --git a/third_party/libs/kitty/properties.hpp b/libs/third_party/kitty/properties.hpp similarity index 100% rename from third_party/libs/kitty/properties.hpp rename to libs/third_party/kitty/properties.hpp diff --git a/third_party/libs/kitty/spectral.hpp b/libs/third_party/kitty/spectral.hpp similarity index 100% rename from third_party/libs/kitty/spectral.hpp rename to libs/third_party/kitty/spectral.hpp diff --git a/third_party/libs/kitty/static_truth_table.hpp b/libs/third_party/kitty/static_truth_table.hpp similarity index 100% rename from third_party/libs/kitty/static_truth_table.hpp rename to libs/third_party/kitty/static_truth_table.hpp diff --git a/third_party/libs/kitty/traits.hpp b/libs/third_party/kitty/traits.hpp similarity index 100% rename from third_party/libs/kitty/traits.hpp rename to libs/third_party/kitty/traits.hpp diff --git a/third_party/libs/lorina/aiger.hpp b/libs/third_party/lorina/aiger.hpp similarity index 100% rename from third_party/libs/lorina/aiger.hpp rename to libs/third_party/lorina/aiger.hpp diff --git a/third_party/libs/lorina/bench.hpp b/libs/third_party/lorina/bench.hpp similarity index 100% rename from third_party/libs/lorina/bench.hpp rename to libs/third_party/lorina/bench.hpp diff --git a/third_party/libs/lorina/blif.hpp b/libs/third_party/lorina/blif.hpp similarity index 100% rename from third_party/libs/lorina/blif.hpp rename to libs/third_party/lorina/blif.hpp diff --git a/third_party/libs/lorina/common.hpp b/libs/third_party/lorina/common.hpp similarity index 100% rename from third_party/libs/lorina/common.hpp rename to libs/third_party/lorina/common.hpp diff --git a/third_party/libs/lorina/detail/tokenizer.hpp b/libs/third_party/lorina/detail/tokenizer.hpp similarity index 100% rename from third_party/libs/lorina/detail/tokenizer.hpp rename to libs/third_party/lorina/detail/tokenizer.hpp diff --git a/third_party/libs/lorina/detail/utils.hpp b/libs/third_party/lorina/detail/utils.hpp similarity index 100% rename from third_party/libs/lorina/detail/utils.hpp rename to libs/third_party/lorina/detail/utils.hpp diff --git a/third_party/libs/lorina/diagnostics.hpp b/libs/third_party/lorina/diagnostics.hpp similarity index 100% rename from third_party/libs/lorina/diagnostics.hpp rename to libs/third_party/lorina/diagnostics.hpp diff --git a/third_party/libs/lorina/lorina.hpp b/libs/third_party/lorina/lorina.hpp similarity index 100% rename from third_party/libs/lorina/lorina.hpp rename to libs/third_party/lorina/lorina.hpp diff --git a/third_party/libs/lorina/pla.hpp b/libs/third_party/lorina/pla.hpp similarity index 100% rename from third_party/libs/lorina/pla.hpp rename to libs/third_party/lorina/pla.hpp diff --git a/third_party/libs/lorina/verilog.hpp b/libs/third_party/lorina/verilog.hpp similarity index 100% rename from third_party/libs/lorina/verilog.hpp rename to libs/third_party/lorina/verilog.hpp diff --git a/third_party/libs/lorina/verilog_regex.hpp b/libs/third_party/lorina/verilog_regex.hpp similarity index 100% rename from third_party/libs/lorina/verilog_regex.hpp rename to libs/third_party/lorina/verilog_regex.hpp diff --git a/third_party/libs/mockturtle/algorithms/aig_resub.hpp b/libs/third_party/mockturtle/algorithms/aig_resub.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/aig_resub.hpp rename to libs/third_party/mockturtle/algorithms/aig_resub.hpp diff --git a/third_party/libs/mockturtle/algorithms/akers_synthesis.hpp b/libs/third_party/mockturtle/algorithms/akers_synthesis.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/akers_synthesis.hpp rename to libs/third_party/mockturtle/algorithms/akers_synthesis.hpp diff --git a/third_party/libs/mockturtle/algorithms/cell_window.hpp b/libs/third_party/mockturtle/algorithms/cell_window.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/cell_window.hpp rename to libs/third_party/mockturtle/algorithms/cell_window.hpp diff --git a/third_party/libs/mockturtle/algorithms/cleanup.hpp b/libs/third_party/mockturtle/algorithms/cleanup.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/cleanup.hpp rename to libs/third_party/mockturtle/algorithms/cleanup.hpp diff --git a/third_party/libs/mockturtle/algorithms/cnf.hpp b/libs/third_party/mockturtle/algorithms/cnf.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/cnf.hpp rename to libs/third_party/mockturtle/algorithms/cnf.hpp diff --git a/third_party/libs/mockturtle/algorithms/collapse_mapped.hpp b/libs/third_party/mockturtle/algorithms/collapse_mapped.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/collapse_mapped.hpp rename to libs/third_party/mockturtle/algorithms/collapse_mapped.hpp diff --git a/third_party/libs/mockturtle/algorithms/cut_enumeration.hpp b/libs/third_party/mockturtle/algorithms/cut_enumeration.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/cut_enumeration.hpp rename to libs/third_party/mockturtle/algorithms/cut_enumeration.hpp diff --git a/third_party/libs/mockturtle/algorithms/cut_enumeration/cnf_cut.hpp b/libs/third_party/mockturtle/algorithms/cut_enumeration/cnf_cut.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/cut_enumeration/cnf_cut.hpp rename to libs/third_party/mockturtle/algorithms/cut_enumeration/cnf_cut.hpp diff --git a/third_party/libs/mockturtle/algorithms/cut_enumeration/gia_cut.hpp b/libs/third_party/mockturtle/algorithms/cut_enumeration/gia_cut.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/cut_enumeration/gia_cut.hpp rename to libs/third_party/mockturtle/algorithms/cut_enumeration/gia_cut.hpp diff --git a/third_party/libs/mockturtle/algorithms/cut_enumeration/mf_cut.hpp b/libs/third_party/mockturtle/algorithms/cut_enumeration/mf_cut.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/cut_enumeration/mf_cut.hpp rename to libs/third_party/mockturtle/algorithms/cut_enumeration/mf_cut.hpp diff --git a/third_party/libs/mockturtle/algorithms/cut_enumeration/spectr_cut.hpp b/libs/third_party/mockturtle/algorithms/cut_enumeration/spectr_cut.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/cut_enumeration/spectr_cut.hpp rename to libs/third_party/mockturtle/algorithms/cut_enumeration/spectr_cut.hpp diff --git a/third_party/libs/mockturtle/algorithms/cut_rewriting.hpp b/libs/third_party/mockturtle/algorithms/cut_rewriting.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/cut_rewriting.hpp rename to libs/third_party/mockturtle/algorithms/cut_rewriting.hpp diff --git a/third_party/libs/mockturtle/algorithms/detail/mffc_utils.hpp b/libs/third_party/mockturtle/algorithms/detail/mffc_utils.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/detail/mffc_utils.hpp rename to libs/third_party/mockturtle/algorithms/detail/mffc_utils.hpp diff --git a/third_party/libs/mockturtle/algorithms/dont_cares.hpp b/libs/third_party/mockturtle/algorithms/dont_cares.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/dont_cares.hpp rename to libs/third_party/mockturtle/algorithms/dont_cares.hpp diff --git a/third_party/libs/mockturtle/algorithms/dsd_decomposition.hpp b/libs/third_party/mockturtle/algorithms/dsd_decomposition.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/dsd_decomposition.hpp rename to libs/third_party/mockturtle/algorithms/dsd_decomposition.hpp diff --git a/third_party/libs/mockturtle/algorithms/equivalence_checking.hpp b/libs/third_party/mockturtle/algorithms/equivalence_checking.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/equivalence_checking.hpp rename to libs/third_party/mockturtle/algorithms/equivalence_checking.hpp diff --git a/third_party/libs/mockturtle/algorithms/gates_to_nodes.hpp b/libs/third_party/mockturtle/algorithms/gates_to_nodes.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/gates_to_nodes.hpp rename to libs/third_party/mockturtle/algorithms/gates_to_nodes.hpp diff --git a/third_party/libs/mockturtle/algorithms/lut_mapping.hpp b/libs/third_party/mockturtle/algorithms/lut_mapping.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/lut_mapping.hpp rename to libs/third_party/mockturtle/algorithms/lut_mapping.hpp diff --git a/third_party/libs/mockturtle/algorithms/mig_algebraic_rewriting.hpp b/libs/third_party/mockturtle/algorithms/mig_algebraic_rewriting.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/mig_algebraic_rewriting.hpp rename to libs/third_party/mockturtle/algorithms/mig_algebraic_rewriting.hpp diff --git a/third_party/libs/mockturtle/algorithms/mig_resub.hpp b/libs/third_party/mockturtle/algorithms/mig_resub.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/mig_resub.hpp rename to libs/third_party/mockturtle/algorithms/mig_resub.hpp diff --git a/third_party/libs/mockturtle/algorithms/miter.hpp b/libs/third_party/mockturtle/algorithms/miter.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/miter.hpp rename to libs/third_party/mockturtle/algorithms/miter.hpp diff --git a/third_party/libs/mockturtle/algorithms/node_resynthesis.hpp b/libs/third_party/mockturtle/algorithms/node_resynthesis.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/node_resynthesis.hpp rename to libs/third_party/mockturtle/algorithms/node_resynthesis.hpp diff --git a/third_party/libs/mockturtle/algorithms/node_resynthesis/akers.hpp b/libs/third_party/mockturtle/algorithms/node_resynthesis/akers.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/node_resynthesis/akers.hpp rename to libs/third_party/mockturtle/algorithms/node_resynthesis/akers.hpp diff --git a/third_party/libs/mockturtle/algorithms/node_resynthesis/direct.hpp b/libs/third_party/mockturtle/algorithms/node_resynthesis/direct.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/node_resynthesis/direct.hpp rename to libs/third_party/mockturtle/algorithms/node_resynthesis/direct.hpp diff --git a/third_party/libs/mockturtle/algorithms/node_resynthesis/exact.hpp b/libs/third_party/mockturtle/algorithms/node_resynthesis/exact.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/node_resynthesis/exact.hpp rename to libs/third_party/mockturtle/algorithms/node_resynthesis/exact.hpp diff --git a/third_party/libs/mockturtle/algorithms/node_resynthesis/mig_npn.hpp b/libs/third_party/mockturtle/algorithms/node_resynthesis/mig_npn.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/node_resynthesis/mig_npn.hpp rename to libs/third_party/mockturtle/algorithms/node_resynthesis/mig_npn.hpp diff --git a/third_party/libs/mockturtle/algorithms/node_resynthesis/xag_minmc.hpp b/libs/third_party/mockturtle/algorithms/node_resynthesis/xag_minmc.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/node_resynthesis/xag_minmc.hpp rename to libs/third_party/mockturtle/algorithms/node_resynthesis/xag_minmc.hpp diff --git a/third_party/libs/mockturtle/algorithms/node_resynthesis/xag_npn.hpp b/libs/third_party/mockturtle/algorithms/node_resynthesis/xag_npn.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/node_resynthesis/xag_npn.hpp rename to libs/third_party/mockturtle/algorithms/node_resynthesis/xag_npn.hpp diff --git a/third_party/libs/mockturtle/algorithms/node_resynthesis/xmg_npn.hpp b/libs/third_party/mockturtle/algorithms/node_resynthesis/xmg_npn.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/node_resynthesis/xmg_npn.hpp rename to libs/third_party/mockturtle/algorithms/node_resynthesis/xmg_npn.hpp diff --git a/third_party/libs/mockturtle/algorithms/reconv_cut.hpp b/libs/third_party/mockturtle/algorithms/reconv_cut.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/reconv_cut.hpp rename to libs/third_party/mockturtle/algorithms/reconv_cut.hpp diff --git a/third_party/libs/mockturtle/algorithms/reconv_cut2.hpp b/libs/third_party/mockturtle/algorithms/reconv_cut2.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/reconv_cut2.hpp rename to libs/third_party/mockturtle/algorithms/reconv_cut2.hpp diff --git a/third_party/libs/mockturtle/algorithms/refactoring.hpp b/libs/third_party/mockturtle/algorithms/refactoring.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/refactoring.hpp rename to libs/third_party/mockturtle/algorithms/refactoring.hpp diff --git a/third_party/libs/mockturtle/algorithms/resubstitution.hpp b/libs/third_party/mockturtle/algorithms/resubstitution.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/resubstitution.hpp rename to libs/third_party/mockturtle/algorithms/resubstitution.hpp diff --git a/third_party/libs/mockturtle/algorithms/satlut_mapping.hpp b/libs/third_party/mockturtle/algorithms/satlut_mapping.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/satlut_mapping.hpp rename to libs/third_party/mockturtle/algorithms/satlut_mapping.hpp diff --git a/third_party/libs/mockturtle/algorithms/simulation.hpp b/libs/third_party/mockturtle/algorithms/simulation.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/simulation.hpp rename to libs/third_party/mockturtle/algorithms/simulation.hpp diff --git a/third_party/libs/mockturtle/algorithms/xmg_algebraic_rewriting.hpp b/libs/third_party/mockturtle/algorithms/xmg_algebraic_rewriting.hpp similarity index 100% rename from third_party/libs/mockturtle/algorithms/xmg_algebraic_rewriting.hpp rename to libs/third_party/mockturtle/algorithms/xmg_algebraic_rewriting.hpp diff --git a/third_party/libs/mockturtle/generators/arithmetic.hpp b/libs/third_party/mockturtle/generators/arithmetic.hpp similarity index 100% rename from third_party/libs/mockturtle/generators/arithmetic.hpp rename to libs/third_party/mockturtle/generators/arithmetic.hpp diff --git a/third_party/libs/mockturtle/generators/control.hpp b/libs/third_party/mockturtle/generators/control.hpp similarity index 100% rename from third_party/libs/mockturtle/generators/control.hpp rename to libs/third_party/mockturtle/generators/control.hpp diff --git a/third_party/libs/mockturtle/generators/modular_arithmetic.hpp b/libs/third_party/mockturtle/generators/modular_arithmetic.hpp similarity index 100% rename from third_party/libs/mockturtle/generators/modular_arithmetic.hpp rename to libs/third_party/mockturtle/generators/modular_arithmetic.hpp diff --git a/third_party/libs/mockturtle/generators/random_logic_generator.hpp b/libs/third_party/mockturtle/generators/random_logic_generator.hpp similarity index 100% rename from third_party/libs/mockturtle/generators/random_logic_generator.hpp rename to libs/third_party/mockturtle/generators/random_logic_generator.hpp diff --git a/third_party/libs/mockturtle/generators/sorting.hpp b/libs/third_party/mockturtle/generators/sorting.hpp similarity index 100% rename from third_party/libs/mockturtle/generators/sorting.hpp rename to libs/third_party/mockturtle/generators/sorting.hpp diff --git a/third_party/libs/mockturtle/interface.hpp b/libs/third_party/mockturtle/interface.hpp similarity index 100% rename from third_party/libs/mockturtle/interface.hpp rename to libs/third_party/mockturtle/interface.hpp diff --git a/third_party/libs/mockturtle/io/aiger_reader.hpp b/libs/third_party/mockturtle/io/aiger_reader.hpp similarity index 100% rename from third_party/libs/mockturtle/io/aiger_reader.hpp rename to libs/third_party/mockturtle/io/aiger_reader.hpp diff --git a/third_party/libs/mockturtle/io/bench_reader.hpp b/libs/third_party/mockturtle/io/bench_reader.hpp similarity index 100% rename from third_party/libs/mockturtle/io/bench_reader.hpp rename to libs/third_party/mockturtle/io/bench_reader.hpp diff --git a/third_party/libs/mockturtle/io/pla_reader.hpp b/libs/third_party/mockturtle/io/pla_reader.hpp similarity index 100% rename from third_party/libs/mockturtle/io/pla_reader.hpp rename to libs/third_party/mockturtle/io/pla_reader.hpp diff --git a/third_party/libs/mockturtle/io/verilog_reader.hpp b/libs/third_party/mockturtle/io/verilog_reader.hpp similarity index 100% rename from third_party/libs/mockturtle/io/verilog_reader.hpp rename to libs/third_party/mockturtle/io/verilog_reader.hpp diff --git a/third_party/libs/mockturtle/io/write_bench.hpp b/libs/third_party/mockturtle/io/write_bench.hpp similarity index 100% rename from third_party/libs/mockturtle/io/write_bench.hpp rename to libs/third_party/mockturtle/io/write_bench.hpp diff --git a/third_party/libs/mockturtle/io/write_dimacs.hpp b/libs/third_party/mockturtle/io/write_dimacs.hpp similarity index 100% rename from third_party/libs/mockturtle/io/write_dimacs.hpp rename to libs/third_party/mockturtle/io/write_dimacs.hpp diff --git a/third_party/libs/mockturtle/io/write_dot.hpp b/libs/third_party/mockturtle/io/write_dot.hpp similarity index 100% rename from third_party/libs/mockturtle/io/write_dot.hpp rename to libs/third_party/mockturtle/io/write_dot.hpp diff --git a/third_party/libs/mockturtle/io/write_verilog.hpp b/libs/third_party/mockturtle/io/write_verilog.hpp similarity index 100% rename from third_party/libs/mockturtle/io/write_verilog.hpp rename to libs/third_party/mockturtle/io/write_verilog.hpp diff --git a/third_party/libs/mockturtle/mockturtle.hpp b/libs/third_party/mockturtle/mockturtle.hpp similarity index 100% rename from third_party/libs/mockturtle/mockturtle.hpp rename to libs/third_party/mockturtle/mockturtle.hpp diff --git a/third_party/libs/mockturtle/networks/aig.hpp b/libs/third_party/mockturtle/networks/aig.hpp similarity index 100% rename from third_party/libs/mockturtle/networks/aig.hpp rename to libs/third_party/mockturtle/networks/aig.hpp diff --git a/third_party/libs/mockturtle/networks/detail/foreach.hpp b/libs/third_party/mockturtle/networks/detail/foreach.hpp similarity index 100% rename from third_party/libs/mockturtle/networks/detail/foreach.hpp rename to libs/third_party/mockturtle/networks/detail/foreach.hpp diff --git a/third_party/libs/mockturtle/networks/events.hpp b/libs/third_party/mockturtle/networks/events.hpp similarity index 100% rename from third_party/libs/mockturtle/networks/events.hpp rename to libs/third_party/mockturtle/networks/events.hpp diff --git a/third_party/libs/mockturtle/networks/klut.hpp b/libs/third_party/mockturtle/networks/klut.hpp similarity index 100% rename from third_party/libs/mockturtle/networks/klut.hpp rename to libs/third_party/mockturtle/networks/klut.hpp diff --git a/third_party/libs/mockturtle/networks/mig.hpp b/libs/third_party/mockturtle/networks/mig.hpp similarity index 100% rename from third_party/libs/mockturtle/networks/mig.hpp rename to libs/third_party/mockturtle/networks/mig.hpp diff --git a/third_party/libs/mockturtle/networks/storage.hpp b/libs/third_party/mockturtle/networks/storage.hpp similarity index 100% rename from third_party/libs/mockturtle/networks/storage.hpp rename to libs/third_party/mockturtle/networks/storage.hpp diff --git a/third_party/libs/mockturtle/networks/xag.hpp b/libs/third_party/mockturtle/networks/xag.hpp similarity index 100% rename from third_party/libs/mockturtle/networks/xag.hpp rename to libs/third_party/mockturtle/networks/xag.hpp diff --git a/third_party/libs/mockturtle/networks/xmg.hpp b/libs/third_party/mockturtle/networks/xmg.hpp similarity index 100% rename from third_party/libs/mockturtle/networks/xmg.hpp rename to libs/third_party/mockturtle/networks/xmg.hpp diff --git a/third_party/libs/mockturtle/properties/migcost.hpp b/libs/third_party/mockturtle/properties/migcost.hpp similarity index 100% rename from third_party/libs/mockturtle/properties/migcost.hpp rename to libs/third_party/mockturtle/properties/migcost.hpp diff --git a/third_party/libs/mockturtle/traits.hpp b/libs/third_party/mockturtle/traits.hpp similarity index 100% rename from third_party/libs/mockturtle/traits.hpp rename to libs/third_party/mockturtle/traits.hpp diff --git a/third_party/libs/mockturtle/utils/algorithm.hpp b/libs/third_party/mockturtle/utils/algorithm.hpp similarity index 100% rename from third_party/libs/mockturtle/utils/algorithm.hpp rename to libs/third_party/mockturtle/utils/algorithm.hpp diff --git a/third_party/libs/mockturtle/utils/cuts.hpp b/libs/third_party/mockturtle/utils/cuts.hpp similarity index 100% rename from third_party/libs/mockturtle/utils/cuts.hpp rename to libs/third_party/mockturtle/utils/cuts.hpp diff --git a/third_party/libs/mockturtle/utils/mixed_radix.hpp b/libs/third_party/mockturtle/utils/mixed_radix.hpp similarity index 100% rename from third_party/libs/mockturtle/utils/mixed_radix.hpp rename to libs/third_party/mockturtle/utils/mixed_radix.hpp diff --git a/third_party/libs/mockturtle/utils/node_map.hpp b/libs/third_party/mockturtle/utils/node_map.hpp similarity index 100% rename from third_party/libs/mockturtle/utils/node_map.hpp rename to libs/third_party/mockturtle/utils/node_map.hpp diff --git a/third_party/libs/mockturtle/utils/progress_bar.hpp b/libs/third_party/mockturtle/utils/progress_bar.hpp similarity index 100% rename from third_party/libs/mockturtle/utils/progress_bar.hpp rename to libs/third_party/mockturtle/utils/progress_bar.hpp diff --git a/third_party/libs/mockturtle/utils/stopwatch.hpp b/libs/third_party/mockturtle/utils/stopwatch.hpp similarity index 100% rename from third_party/libs/mockturtle/utils/stopwatch.hpp rename to libs/third_party/mockturtle/utils/stopwatch.hpp diff --git a/third_party/libs/mockturtle/utils/string_utils.hpp b/libs/third_party/mockturtle/utils/string_utils.hpp similarity index 100% rename from third_party/libs/mockturtle/utils/string_utils.hpp rename to libs/third_party/mockturtle/utils/string_utils.hpp diff --git a/third_party/libs/mockturtle/utils/truth_table_cache.hpp b/libs/third_party/mockturtle/utils/truth_table_cache.hpp similarity index 100% rename from third_party/libs/mockturtle/utils/truth_table_cache.hpp rename to libs/third_party/mockturtle/utils/truth_table_cache.hpp diff --git a/third_party/libs/mockturtle/views/cut_view.hpp b/libs/third_party/mockturtle/views/cut_view.hpp similarity index 100% rename from third_party/libs/mockturtle/views/cut_view.hpp rename to libs/third_party/mockturtle/views/cut_view.hpp diff --git a/third_party/libs/mockturtle/views/depth_view.hpp b/libs/third_party/mockturtle/views/depth_view.hpp similarity index 100% rename from third_party/libs/mockturtle/views/depth_view.hpp rename to libs/third_party/mockturtle/views/depth_view.hpp diff --git a/third_party/libs/mockturtle/views/fanout_view.hpp b/libs/third_party/mockturtle/views/fanout_view.hpp similarity index 100% rename from third_party/libs/mockturtle/views/fanout_view.hpp rename to libs/third_party/mockturtle/views/fanout_view.hpp diff --git a/third_party/libs/mockturtle/views/fanout_view2.hpp b/libs/third_party/mockturtle/views/fanout_view2.hpp similarity index 100% rename from third_party/libs/mockturtle/views/fanout_view2.hpp rename to libs/third_party/mockturtle/views/fanout_view2.hpp diff --git a/third_party/libs/mockturtle/views/immutable_view.hpp b/libs/third_party/mockturtle/views/immutable_view.hpp similarity index 100% rename from third_party/libs/mockturtle/views/immutable_view.hpp rename to libs/third_party/mockturtle/views/immutable_view.hpp diff --git a/third_party/libs/mockturtle/views/mapping_view.hpp b/libs/third_party/mockturtle/views/mapping_view.hpp similarity index 100% rename from third_party/libs/mockturtle/views/mapping_view.hpp rename to libs/third_party/mockturtle/views/mapping_view.hpp diff --git a/third_party/libs/mockturtle/views/mffc_view.hpp b/libs/third_party/mockturtle/views/mffc_view.hpp similarity index 100% rename from third_party/libs/mockturtle/views/mffc_view.hpp rename to libs/third_party/mockturtle/views/mffc_view.hpp diff --git a/third_party/libs/mockturtle/views/topo_view.hpp b/libs/third_party/mockturtle/views/topo_view.hpp similarity index 100% rename from third_party/libs/mockturtle/views/topo_view.hpp rename to libs/third_party/mockturtle/views/topo_view.hpp diff --git a/third_party/libs/mockturtle/views/window_view.hpp b/libs/third_party/mockturtle/views/window_view.hpp similarity index 100% rename from third_party/libs/mockturtle/views/window_view.hpp rename to libs/third_party/mockturtle/views/window_view.hpp diff --git a/third_party/libs/nlohmann/adl_serializer.hpp b/libs/third_party/nlohmann/adl_serializer.hpp similarity index 100% rename from third_party/libs/nlohmann/adl_serializer.hpp rename to libs/third_party/nlohmann/adl_serializer.hpp diff --git a/third_party/libs/nlohmann/byte_container_with_subtype.hpp b/libs/third_party/nlohmann/byte_container_with_subtype.hpp similarity index 100% rename from third_party/libs/nlohmann/byte_container_with_subtype.hpp rename to libs/third_party/nlohmann/byte_container_with_subtype.hpp diff --git a/third_party/libs/nlohmann/detail/conversions/from_json.hpp b/libs/third_party/nlohmann/detail/conversions/from_json.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/conversions/from_json.hpp rename to libs/third_party/nlohmann/detail/conversions/from_json.hpp diff --git a/third_party/libs/nlohmann/detail/conversions/to_chars.hpp b/libs/third_party/nlohmann/detail/conversions/to_chars.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/conversions/to_chars.hpp rename to libs/third_party/nlohmann/detail/conversions/to_chars.hpp diff --git a/third_party/libs/nlohmann/detail/conversions/to_json.hpp b/libs/third_party/nlohmann/detail/conversions/to_json.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/conversions/to_json.hpp rename to libs/third_party/nlohmann/detail/conversions/to_json.hpp diff --git a/third_party/libs/nlohmann/detail/exceptions.hpp b/libs/third_party/nlohmann/detail/exceptions.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/exceptions.hpp rename to libs/third_party/nlohmann/detail/exceptions.hpp diff --git a/third_party/libs/nlohmann/detail/hash.hpp b/libs/third_party/nlohmann/detail/hash.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/hash.hpp rename to libs/third_party/nlohmann/detail/hash.hpp diff --git a/third_party/libs/nlohmann/detail/input/binary_reader.hpp b/libs/third_party/nlohmann/detail/input/binary_reader.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/input/binary_reader.hpp rename to libs/third_party/nlohmann/detail/input/binary_reader.hpp diff --git a/third_party/libs/nlohmann/detail/input/input_adapters.hpp b/libs/third_party/nlohmann/detail/input/input_adapters.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/input/input_adapters.hpp rename to libs/third_party/nlohmann/detail/input/input_adapters.hpp diff --git a/third_party/libs/nlohmann/detail/input/json_sax.hpp b/libs/third_party/nlohmann/detail/input/json_sax.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/input/json_sax.hpp rename to libs/third_party/nlohmann/detail/input/json_sax.hpp diff --git a/third_party/libs/nlohmann/detail/input/lexer.hpp b/libs/third_party/nlohmann/detail/input/lexer.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/input/lexer.hpp rename to libs/third_party/nlohmann/detail/input/lexer.hpp diff --git a/third_party/libs/nlohmann/detail/input/parser.hpp b/libs/third_party/nlohmann/detail/input/parser.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/input/parser.hpp rename to libs/third_party/nlohmann/detail/input/parser.hpp diff --git a/third_party/libs/nlohmann/detail/input/position_t.hpp b/libs/third_party/nlohmann/detail/input/position_t.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/input/position_t.hpp rename to libs/third_party/nlohmann/detail/input/position_t.hpp diff --git a/third_party/libs/nlohmann/detail/iterators/internal_iterator.hpp b/libs/third_party/nlohmann/detail/iterators/internal_iterator.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/iterators/internal_iterator.hpp rename to libs/third_party/nlohmann/detail/iterators/internal_iterator.hpp diff --git a/third_party/libs/nlohmann/detail/iterators/iter_impl.hpp b/libs/third_party/nlohmann/detail/iterators/iter_impl.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/iterators/iter_impl.hpp rename to libs/third_party/nlohmann/detail/iterators/iter_impl.hpp diff --git a/third_party/libs/nlohmann/detail/iterators/iteration_proxy.hpp b/libs/third_party/nlohmann/detail/iterators/iteration_proxy.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/iterators/iteration_proxy.hpp rename to libs/third_party/nlohmann/detail/iterators/iteration_proxy.hpp diff --git a/third_party/libs/nlohmann/detail/iterators/iterator_traits.hpp b/libs/third_party/nlohmann/detail/iterators/iterator_traits.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/iterators/iterator_traits.hpp rename to libs/third_party/nlohmann/detail/iterators/iterator_traits.hpp diff --git a/third_party/libs/nlohmann/detail/iterators/json_reverse_iterator.hpp b/libs/third_party/nlohmann/detail/iterators/json_reverse_iterator.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/iterators/json_reverse_iterator.hpp rename to libs/third_party/nlohmann/detail/iterators/json_reverse_iterator.hpp diff --git a/third_party/libs/nlohmann/detail/iterators/primitive_iterator.hpp b/libs/third_party/nlohmann/detail/iterators/primitive_iterator.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/iterators/primitive_iterator.hpp rename to libs/third_party/nlohmann/detail/iterators/primitive_iterator.hpp diff --git a/third_party/libs/nlohmann/detail/json_pointer.hpp b/libs/third_party/nlohmann/detail/json_pointer.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/json_pointer.hpp rename to libs/third_party/nlohmann/detail/json_pointer.hpp diff --git a/third_party/libs/nlohmann/detail/json_ref.hpp b/libs/third_party/nlohmann/detail/json_ref.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/json_ref.hpp rename to libs/third_party/nlohmann/detail/json_ref.hpp diff --git a/third_party/libs/nlohmann/detail/macro_scope.hpp b/libs/third_party/nlohmann/detail/macro_scope.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/macro_scope.hpp rename to libs/third_party/nlohmann/detail/macro_scope.hpp diff --git a/third_party/libs/nlohmann/detail/macro_unscope.hpp b/libs/third_party/nlohmann/detail/macro_unscope.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/macro_unscope.hpp rename to libs/third_party/nlohmann/detail/macro_unscope.hpp diff --git a/third_party/libs/nlohmann/detail/meta/cpp_future.hpp b/libs/third_party/nlohmann/detail/meta/cpp_future.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/meta/cpp_future.hpp rename to libs/third_party/nlohmann/detail/meta/cpp_future.hpp diff --git a/third_party/libs/nlohmann/detail/meta/detected.hpp b/libs/third_party/nlohmann/detail/meta/detected.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/meta/detected.hpp rename to libs/third_party/nlohmann/detail/meta/detected.hpp diff --git a/third_party/libs/nlohmann/detail/meta/identity_tag.hpp b/libs/third_party/nlohmann/detail/meta/identity_tag.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/meta/identity_tag.hpp rename to libs/third_party/nlohmann/detail/meta/identity_tag.hpp diff --git a/third_party/libs/nlohmann/detail/meta/is_sax.hpp b/libs/third_party/nlohmann/detail/meta/is_sax.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/meta/is_sax.hpp rename to libs/third_party/nlohmann/detail/meta/is_sax.hpp diff --git a/third_party/libs/nlohmann/detail/meta/type_traits.hpp b/libs/third_party/nlohmann/detail/meta/type_traits.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/meta/type_traits.hpp rename to libs/third_party/nlohmann/detail/meta/type_traits.hpp diff --git a/third_party/libs/nlohmann/detail/meta/void_t.hpp b/libs/third_party/nlohmann/detail/meta/void_t.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/meta/void_t.hpp rename to libs/third_party/nlohmann/detail/meta/void_t.hpp diff --git a/third_party/libs/nlohmann/detail/output/binary_writer.hpp b/libs/third_party/nlohmann/detail/output/binary_writer.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/output/binary_writer.hpp rename to libs/third_party/nlohmann/detail/output/binary_writer.hpp diff --git a/third_party/libs/nlohmann/detail/output/output_adapters.hpp b/libs/third_party/nlohmann/detail/output/output_adapters.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/output/output_adapters.hpp rename to libs/third_party/nlohmann/detail/output/output_adapters.hpp diff --git a/third_party/libs/nlohmann/detail/output/serializer.hpp b/libs/third_party/nlohmann/detail/output/serializer.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/output/serializer.hpp rename to libs/third_party/nlohmann/detail/output/serializer.hpp diff --git a/third_party/libs/nlohmann/detail/string_escape.hpp b/libs/third_party/nlohmann/detail/string_escape.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/string_escape.hpp rename to libs/third_party/nlohmann/detail/string_escape.hpp diff --git a/third_party/libs/nlohmann/detail/value_t.hpp b/libs/third_party/nlohmann/detail/value_t.hpp similarity index 100% rename from third_party/libs/nlohmann/detail/value_t.hpp rename to libs/third_party/nlohmann/detail/value_t.hpp diff --git a/third_party/libs/nlohmann/json.hpp b/libs/third_party/nlohmann/json.hpp similarity index 100% rename from third_party/libs/nlohmann/json.hpp rename to libs/third_party/nlohmann/json.hpp diff --git a/third_party/libs/nlohmann/json_fwd.hpp b/libs/third_party/nlohmann/json_fwd.hpp similarity index 100% rename from third_party/libs/nlohmann/json_fwd.hpp rename to libs/third_party/nlohmann/json_fwd.hpp diff --git a/third_party/libs/nlohmann/ordered_map.hpp b/libs/third_party/nlohmann/ordered_map.hpp similarity index 100% rename from third_party/libs/nlohmann/ordered_map.hpp rename to libs/third_party/nlohmann/ordered_map.hpp diff --git a/third_party/libs/nlohmann/thirdparty/hedley/hedley.hpp b/libs/third_party/nlohmann/thirdparty/hedley/hedley.hpp similarity index 100% rename from third_party/libs/nlohmann/thirdparty/hedley/hedley.hpp rename to libs/third_party/nlohmann/thirdparty/hedley/hedley.hpp diff --git a/third_party/libs/nlohmann/thirdparty/hedley/hedley_undef.hpp b/libs/third_party/nlohmann/thirdparty/hedley/hedley_undef.hpp similarity index 100% rename from third_party/libs/nlohmann/thirdparty/hedley/hedley_undef.hpp rename to libs/third_party/nlohmann/thirdparty/hedley/hedley_undef.hpp diff --git a/third_party/libs/pthreadwin32/pthread.h b/libs/third_party/pthreadwin32/pthread.h similarity index 100% rename from third_party/libs/pthreadwin32/pthread.h rename to libs/third_party/pthreadwin32/pthread.h diff --git a/third_party/libs/pthreadwin32/sched.h b/libs/third_party/pthreadwin32/sched.h similarity index 100% rename from third_party/libs/pthreadwin32/sched.h rename to libs/third_party/pthreadwin32/sched.h diff --git a/third_party/libs/pthreadwin32/semaphore.h b/libs/third_party/pthreadwin32/semaphore.h similarity index 100% rename from third_party/libs/pthreadwin32/semaphore.h rename to libs/third_party/pthreadwin32/semaphore.h diff --git a/third_party/libs/pybind11/attr.h b/libs/third_party/pybind11/attr.h similarity index 100% rename from third_party/libs/pybind11/attr.h rename to libs/third_party/pybind11/attr.h diff --git a/third_party/libs/pybind11/buffer_info.h b/libs/third_party/pybind11/buffer_info.h similarity index 100% rename from third_party/libs/pybind11/buffer_info.h rename to libs/third_party/pybind11/buffer_info.h diff --git a/third_party/libs/pybind11/cast.h b/libs/third_party/pybind11/cast.h similarity index 100% rename from third_party/libs/pybind11/cast.h rename to libs/third_party/pybind11/cast.h diff --git a/third_party/libs/pybind11/chrono.h b/libs/third_party/pybind11/chrono.h similarity index 100% rename from third_party/libs/pybind11/chrono.h rename to libs/third_party/pybind11/chrono.h diff --git a/third_party/libs/pybind11/common.h b/libs/third_party/pybind11/common.h similarity index 100% rename from third_party/libs/pybind11/common.h rename to libs/third_party/pybind11/common.h diff --git a/third_party/libs/pybind11/complex.h b/libs/third_party/pybind11/complex.h similarity index 100% rename from third_party/libs/pybind11/complex.h rename to libs/third_party/pybind11/complex.h diff --git a/third_party/libs/pybind11/detail/class.h b/libs/third_party/pybind11/detail/class.h similarity index 100% rename from third_party/libs/pybind11/detail/class.h rename to libs/third_party/pybind11/detail/class.h diff --git a/third_party/libs/pybind11/detail/common.h b/libs/third_party/pybind11/detail/common.h similarity index 100% rename from third_party/libs/pybind11/detail/common.h rename to libs/third_party/pybind11/detail/common.h diff --git a/third_party/libs/pybind11/detail/descr.h b/libs/third_party/pybind11/detail/descr.h similarity index 100% rename from third_party/libs/pybind11/detail/descr.h rename to libs/third_party/pybind11/detail/descr.h diff --git a/third_party/libs/pybind11/detail/init.h b/libs/third_party/pybind11/detail/init.h similarity index 100% rename from third_party/libs/pybind11/detail/init.h rename to libs/third_party/pybind11/detail/init.h diff --git a/third_party/libs/pybind11/detail/internals.h b/libs/third_party/pybind11/detail/internals.h similarity index 100% rename from third_party/libs/pybind11/detail/internals.h rename to libs/third_party/pybind11/detail/internals.h diff --git a/third_party/libs/pybind11/detail/type_caster_base.h b/libs/third_party/pybind11/detail/type_caster_base.h similarity index 100% rename from third_party/libs/pybind11/detail/type_caster_base.h rename to libs/third_party/pybind11/detail/type_caster_base.h diff --git a/third_party/libs/pybind11/detail/typeid.h b/libs/third_party/pybind11/detail/typeid.h similarity index 100% rename from third_party/libs/pybind11/detail/typeid.h rename to libs/third_party/pybind11/detail/typeid.h diff --git a/third_party/libs/pybind11/eigen.h b/libs/third_party/pybind11/eigen.h similarity index 100% rename from third_party/libs/pybind11/eigen.h rename to libs/third_party/pybind11/eigen.h diff --git a/third_party/libs/pybind11/eigen/matrix.h b/libs/third_party/pybind11/eigen/matrix.h similarity index 100% rename from third_party/libs/pybind11/eigen/matrix.h rename to libs/third_party/pybind11/eigen/matrix.h diff --git a/third_party/libs/pybind11/eigen/tensor.h b/libs/third_party/pybind11/eigen/tensor.h similarity index 100% rename from third_party/libs/pybind11/eigen/tensor.h rename to libs/third_party/pybind11/eigen/tensor.h diff --git a/third_party/libs/pybind11/embed.h b/libs/third_party/pybind11/embed.h similarity index 100% rename from third_party/libs/pybind11/embed.h rename to libs/third_party/pybind11/embed.h diff --git a/third_party/libs/pybind11/eval.h b/libs/third_party/pybind11/eval.h similarity index 100% rename from third_party/libs/pybind11/eval.h rename to libs/third_party/pybind11/eval.h diff --git a/third_party/libs/pybind11/functional.h b/libs/third_party/pybind11/functional.h similarity index 100% rename from third_party/libs/pybind11/functional.h rename to libs/third_party/pybind11/functional.h diff --git a/third_party/libs/pybind11/gil.h b/libs/third_party/pybind11/gil.h similarity index 100% rename from third_party/libs/pybind11/gil.h rename to libs/third_party/pybind11/gil.h diff --git a/third_party/libs/pybind11/iostream.h b/libs/third_party/pybind11/iostream.h similarity index 100% rename from third_party/libs/pybind11/iostream.h rename to libs/third_party/pybind11/iostream.h diff --git a/third_party/libs/pybind11/numpy.h b/libs/third_party/pybind11/numpy.h similarity index 100% rename from third_party/libs/pybind11/numpy.h rename to libs/third_party/pybind11/numpy.h diff --git a/third_party/libs/pybind11/operators.h b/libs/third_party/pybind11/operators.h similarity index 100% rename from third_party/libs/pybind11/operators.h rename to libs/third_party/pybind11/operators.h diff --git a/third_party/libs/pybind11/options.h b/libs/third_party/pybind11/options.h similarity index 100% rename from third_party/libs/pybind11/options.h rename to libs/third_party/pybind11/options.h diff --git a/third_party/libs/pybind11/pybind11.h b/libs/third_party/pybind11/pybind11.h similarity index 100% rename from third_party/libs/pybind11/pybind11.h rename to libs/third_party/pybind11/pybind11.h diff --git a/third_party/libs/pybind11/pytypes.h b/libs/third_party/pybind11/pytypes.h similarity index 100% rename from third_party/libs/pybind11/pytypes.h rename to libs/third_party/pybind11/pytypes.h diff --git a/third_party/libs/pybind11/stl.h b/libs/third_party/pybind11/stl.h similarity index 100% rename from third_party/libs/pybind11/stl.h rename to libs/third_party/pybind11/stl.h diff --git a/third_party/libs/pybind11/stl/filesystem.h b/libs/third_party/pybind11/stl/filesystem.h similarity index 100% rename from third_party/libs/pybind11/stl/filesystem.h rename to libs/third_party/pybind11/stl/filesystem.h diff --git a/third_party/libs/pybind11/stl_bind.h b/libs/third_party/pybind11/stl_bind.h similarity index 100% rename from third_party/libs/pybind11/stl_bind.h rename to libs/third_party/pybind11/stl_bind.h diff --git a/third_party/libs/rang/rang.hpp b/libs/third_party/rang/rang.hpp similarity index 100% rename from third_party/libs/rang/rang.hpp rename to libs/third_party/rang/rang.hpp diff --git a/third_party/libs/sparsepp/spp.h b/libs/third_party/sparsepp/spp.h similarity index 100% rename from third_party/libs/sparsepp/spp.h rename to libs/third_party/sparsepp/spp.h diff --git a/third_party/libs/sparsepp/spp_config.h b/libs/third_party/sparsepp/spp_config.h similarity index 100% rename from third_party/libs/sparsepp/spp_config.h rename to libs/third_party/sparsepp/spp_config.h diff --git a/third_party/libs/sparsepp/spp_dlalloc.h b/libs/third_party/sparsepp/spp_dlalloc.h similarity index 100% rename from third_party/libs/sparsepp/spp_dlalloc.h rename to libs/third_party/sparsepp/spp_dlalloc.h diff --git a/third_party/libs/sparsepp/spp_memory.h b/libs/third_party/sparsepp/spp_memory.h similarity index 100% rename from third_party/libs/sparsepp/spp_memory.h rename to libs/third_party/sparsepp/spp_memory.h diff --git a/third_party/libs/sparsepp/spp_smartptr.h b/libs/third_party/sparsepp/spp_smartptr.h similarity index 100% rename from third_party/libs/sparsepp/spp_smartptr.h rename to libs/third_party/sparsepp/spp_smartptr.h diff --git a/third_party/libs/sparsepp/spp_stdint.h b/libs/third_party/sparsepp/spp_stdint.h similarity index 100% rename from third_party/libs/sparsepp/spp_stdint.h rename to libs/third_party/sparsepp/spp_stdint.h diff --git a/third_party/libs/sparsepp/spp_timer.h b/libs/third_party/sparsepp/spp_timer.h similarity index 100% rename from third_party/libs/sparsepp/spp_timer.h rename to libs/third_party/sparsepp/spp_timer.h diff --git a/third_party/libs/sparsepp/spp_traits.h b/libs/third_party/sparsepp/spp_traits.h similarity index 100% rename from third_party/libs/sparsepp/spp_traits.h rename to libs/third_party/sparsepp/spp_traits.h diff --git a/third_party/libs/sparsepp/spp_utils.h b/libs/third_party/sparsepp/spp_utils.h similarity index 100% rename from third_party/libs/sparsepp/spp_utils.h rename to libs/third_party/sparsepp/spp_utils.h diff --git a/third_party/libs/tweedledum/algorithms/decomposition/barenco.hpp b/libs/third_party/tweedledum/algorithms/decomposition/barenco.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/decomposition/barenco.hpp rename to libs/third_party/tweedledum/algorithms/decomposition/barenco.hpp diff --git a/third_party/libs/tweedledum/algorithms/decomposition/dt.hpp b/libs/third_party/tweedledum/algorithms/decomposition/dt.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/decomposition/dt.hpp rename to libs/third_party/tweedledum/algorithms/decomposition/dt.hpp diff --git a/third_party/libs/tweedledum/algorithms/decomposition/gates/ccccx.hpp b/libs/third_party/tweedledum/algorithms/decomposition/gates/ccccx.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/decomposition/gates/ccccx.hpp rename to libs/third_party/tweedledum/algorithms/decomposition/gates/ccccx.hpp diff --git a/third_party/libs/tweedledum/algorithms/decomposition/gates/cccx.hpp b/libs/third_party/tweedledum/algorithms/decomposition/gates/cccx.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/decomposition/gates/cccx.hpp rename to libs/third_party/tweedledum/algorithms/decomposition/gates/cccx.hpp diff --git a/third_party/libs/tweedledum/algorithms/decomposition/gates/ccx.hpp b/libs/third_party/tweedledum/algorithms/decomposition/gates/ccx.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/decomposition/gates/ccx.hpp rename to libs/third_party/tweedledum/algorithms/decomposition/gates/ccx.hpp diff --git a/third_party/libs/tweedledum/algorithms/decomposition/gates/ccz.hpp b/libs/third_party/tweedledum/algorithms/decomposition/gates/ccz.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/decomposition/gates/ccz.hpp rename to libs/third_party/tweedledum/algorithms/decomposition/gates/ccz.hpp diff --git a/third_party/libs/tweedledum/algorithms/decomposition/gates/database.hpp b/libs/third_party/tweedledum/algorithms/decomposition/gates/database.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/decomposition/gates/database.hpp rename to libs/third_party/tweedledum/algorithms/decomposition/gates/database.hpp diff --git a/third_party/libs/tweedledum/algorithms/generic/convert_to.hpp b/libs/third_party/tweedledum/algorithms/generic/convert_to.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/generic/convert_to.hpp rename to libs/third_party/tweedledum/algorithms/generic/convert_to.hpp diff --git a/third_party/libs/tweedledum/algorithms/generic/remove_marked.hpp b/libs/third_party/tweedledum/algorithms/generic/remove_marked.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/generic/remove_marked.hpp rename to libs/third_party/tweedledum/algorithms/generic/remove_marked.hpp diff --git a/third_party/libs/tweedledum/algorithms/generic/rewrite.hpp b/libs/third_party/tweedledum/algorithms/generic/rewrite.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/generic/rewrite.hpp rename to libs/third_party/tweedledum/algorithms/generic/rewrite.hpp diff --git a/third_party/libs/tweedledum/algorithms/generic/shallow_duplicate.hpp b/libs/third_party/tweedledum/algorithms/generic/shallow_duplicate.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/generic/shallow_duplicate.hpp rename to libs/third_party/tweedledum/algorithms/generic/shallow_duplicate.hpp diff --git a/third_party/libs/tweedledum/algorithms/identify_rz.hpp b/libs/third_party/tweedledum/algorithms/identify_rz.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/identify_rz.hpp rename to libs/third_party/tweedledum/algorithms/identify_rz.hpp diff --git a/third_party/libs/tweedledum/algorithms/mapping/sat_map.hpp b/libs/third_party/tweedledum/algorithms/mapping/sat_map.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/mapping/sat_map.hpp rename to libs/third_party/tweedledum/algorithms/mapping/sat_map.hpp diff --git a/third_party/libs/tweedledum/algorithms/mapping/zdd_map.hpp b/libs/third_party/tweedledum/algorithms/mapping/zdd_map.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/mapping/zdd_map.hpp rename to libs/third_party/tweedledum/algorithms/mapping/zdd_map.hpp diff --git a/third_party/libs/tweedledum/algorithms/optimization/gate_cancellation.hpp b/libs/third_party/tweedledum/algorithms/optimization/gate_cancellation.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/optimization/gate_cancellation.hpp rename to libs/third_party/tweedledum/algorithms/optimization/gate_cancellation.hpp diff --git a/third_party/libs/tweedledum/algorithms/optimization/phase_folding.hpp b/libs/third_party/tweedledum/algorithms/optimization/phase_folding.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/optimization/phase_folding.hpp rename to libs/third_party/tweedledum/algorithms/optimization/phase_folding.hpp diff --git a/third_party/libs/tweedledum/algorithms/simulation/simulate_classically.hpp b/libs/third_party/tweedledum/algorithms/simulation/simulate_classically.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/simulation/simulate_classically.hpp rename to libs/third_party/tweedledum/algorithms/simulation/simulate_classically.hpp diff --git a/third_party/libs/tweedledum/algorithms/synthesis/cnot_patel.hpp b/libs/third_party/tweedledum/algorithms/synthesis/cnot_patel.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/synthesis/cnot_patel.hpp rename to libs/third_party/tweedledum/algorithms/synthesis/cnot_patel.hpp diff --git a/third_party/libs/tweedledum/algorithms/synthesis/dbs.hpp b/libs/third_party/tweedledum/algorithms/synthesis/dbs.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/synthesis/dbs.hpp rename to libs/third_party/tweedledum/algorithms/synthesis/dbs.hpp diff --git a/third_party/libs/tweedledum/algorithms/synthesis/diagonal_synth.hpp b/libs/third_party/tweedledum/algorithms/synthesis/diagonal_synth.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/synthesis/diagonal_synth.hpp rename to libs/third_party/tweedledum/algorithms/synthesis/diagonal_synth.hpp diff --git a/third_party/libs/tweedledum/algorithms/synthesis/esop_phase_synth.hpp b/libs/third_party/tweedledum/algorithms/synthesis/esop_phase_synth.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/synthesis/esop_phase_synth.hpp rename to libs/third_party/tweedledum/algorithms/synthesis/esop_phase_synth.hpp diff --git a/third_party/libs/tweedledum/algorithms/synthesis/gray_synth.hpp b/libs/third_party/tweedledum/algorithms/synthesis/gray_synth.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/synthesis/gray_synth.hpp rename to libs/third_party/tweedledum/algorithms/synthesis/gray_synth.hpp diff --git a/third_party/libs/tweedledum/algorithms/synthesis/linear_synth.hpp b/libs/third_party/tweedledum/algorithms/synthesis/linear_synth.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/synthesis/linear_synth.hpp rename to libs/third_party/tweedledum/algorithms/synthesis/linear_synth.hpp diff --git a/third_party/libs/tweedledum/algorithms/synthesis/stg.hpp b/libs/third_party/tweedledum/algorithms/synthesis/stg.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/synthesis/stg.hpp rename to libs/third_party/tweedledum/algorithms/synthesis/stg.hpp diff --git a/third_party/libs/tweedledum/algorithms/synthesis/tbs.hpp b/libs/third_party/tweedledum/algorithms/synthesis/tbs.hpp similarity index 100% rename from third_party/libs/tweedledum/algorithms/synthesis/tbs.hpp rename to libs/third_party/tweedledum/algorithms/synthesis/tbs.hpp diff --git a/third_party/libs/tweedledum/gates/gate_base.hpp b/libs/third_party/tweedledum/gates/gate_base.hpp similarity index 100% rename from third_party/libs/tweedledum/gates/gate_base.hpp rename to libs/third_party/tweedledum/gates/gate_base.hpp diff --git a/third_party/libs/tweedledum/gates/gate_lib.def b/libs/third_party/tweedledum/gates/gate_lib.def similarity index 100% rename from third_party/libs/tweedledum/gates/gate_lib.def rename to libs/third_party/tweedledum/gates/gate_lib.def diff --git a/third_party/libs/tweedledum/gates/gate_lib.hpp b/libs/third_party/tweedledum/gates/gate_lib.hpp similarity index 100% rename from third_party/libs/tweedledum/gates/gate_lib.hpp rename to libs/third_party/tweedledum/gates/gate_lib.hpp diff --git a/third_party/libs/tweedledum/gates/interface.hpp b/libs/third_party/tweedledum/gates/interface.hpp similarity index 100% rename from third_party/libs/tweedledum/gates/interface.hpp rename to libs/third_party/tweedledum/gates/interface.hpp diff --git a/third_party/libs/tweedledum/gates/io3_gate.hpp b/libs/third_party/tweedledum/gates/io3_gate.hpp similarity index 100% rename from third_party/libs/tweedledum/gates/io3_gate.hpp rename to libs/third_party/tweedledum/gates/io3_gate.hpp diff --git a/third_party/libs/tweedledum/gates/mcmt_gate.hpp b/libs/third_party/tweedledum/gates/mcmt_gate.hpp similarity index 100% rename from third_party/libs/tweedledum/gates/mcmt_gate.hpp rename to libs/third_party/tweedledum/gates/mcmt_gate.hpp diff --git a/third_party/libs/tweedledum/io/dotqc.hpp b/libs/third_party/tweedledum/io/dotqc.hpp similarity index 100% rename from third_party/libs/tweedledum/io/dotqc.hpp rename to libs/third_party/tweedledum/io/dotqc.hpp diff --git a/third_party/libs/tweedledum/io/qasm.hpp b/libs/third_party/tweedledum/io/qasm.hpp similarity index 100% rename from third_party/libs/tweedledum/io/qasm.hpp rename to libs/third_party/tweedledum/io/qasm.hpp diff --git a/third_party/libs/tweedledum/io/quil.hpp b/libs/third_party/tweedledum/io/quil.hpp similarity index 100% rename from third_party/libs/tweedledum/io/quil.hpp rename to libs/third_party/tweedledum/io/quil.hpp diff --git a/third_party/libs/tweedledum/io/read_device.hpp b/libs/third_party/tweedledum/io/read_device.hpp similarity index 100% rename from third_party/libs/tweedledum/io/read_device.hpp rename to libs/third_party/tweedledum/io/read_device.hpp diff --git a/third_party/libs/tweedledum/io/write_dot.hpp b/libs/third_party/tweedledum/io/write_dot.hpp similarity index 100% rename from third_party/libs/tweedledum/io/write_dot.hpp rename to libs/third_party/tweedledum/io/write_dot.hpp diff --git a/third_party/libs/tweedledum/io/write_projectq.hpp b/libs/third_party/tweedledum/io/write_projectq.hpp similarity index 100% rename from third_party/libs/tweedledum/io/write_projectq.hpp rename to libs/third_party/tweedledum/io/write_projectq.hpp diff --git a/third_party/libs/tweedledum/io/write_qpic.hpp b/libs/third_party/tweedledum/io/write_qpic.hpp similarity index 100% rename from third_party/libs/tweedledum/io/write_qpic.hpp rename to libs/third_party/tweedledum/io/write_qpic.hpp diff --git a/third_party/libs/tweedledum/io/write_quirk.hpp b/libs/third_party/tweedledum/io/write_quirk.hpp similarity index 100% rename from third_party/libs/tweedledum/io/write_quirk.hpp rename to libs/third_party/tweedledum/io/write_quirk.hpp diff --git a/third_party/libs/tweedledum/io/write_unicode.hpp b/libs/third_party/tweedledum/io/write_unicode.hpp similarity index 100% rename from third_party/libs/tweedledum/io/write_unicode.hpp rename to libs/third_party/tweedledum/io/write_unicode.hpp diff --git a/third_party/libs/tweedledum/networks/detail/storage.hpp b/libs/third_party/tweedledum/networks/detail/storage.hpp similarity index 100% rename from third_party/libs/tweedledum/networks/detail/storage.hpp rename to libs/third_party/tweedledum/networks/detail/storage.hpp diff --git a/third_party/libs/tweedledum/networks/gg_network.hpp b/libs/third_party/tweedledum/networks/gg_network.hpp similarity index 100% rename from third_party/libs/tweedledum/networks/gg_network.hpp rename to libs/third_party/tweedledum/networks/gg_network.hpp diff --git a/third_party/libs/tweedledum/networks/interface.hpp b/libs/third_party/tweedledum/networks/interface.hpp similarity index 100% rename from third_party/libs/tweedledum/networks/interface.hpp rename to libs/third_party/tweedledum/networks/interface.hpp diff --git a/third_party/libs/tweedledum/networks/io_id.hpp b/libs/third_party/tweedledum/networks/io_id.hpp similarity index 100% rename from third_party/libs/tweedledum/networks/io_id.hpp rename to libs/third_party/tweedledum/networks/io_id.hpp diff --git a/third_party/libs/tweedledum/networks/netlist.hpp b/libs/third_party/tweedledum/networks/netlist.hpp similarity index 100% rename from third_party/libs/tweedledum/networks/netlist.hpp rename to libs/third_party/tweedledum/networks/netlist.hpp diff --git a/third_party/libs/tweedledum/traits.hpp b/libs/third_party/tweedledum/traits.hpp similarity index 100% rename from third_party/libs/tweedledum/traits.hpp rename to libs/third_party/tweedledum/traits.hpp diff --git a/third_party/libs/tweedledum/tweedledum.hpp b/libs/third_party/tweedledum/tweedledum.hpp similarity index 100% rename from third_party/libs/tweedledum/tweedledum.hpp rename to libs/third_party/tweedledum/tweedledum.hpp diff --git a/third_party/libs/tweedledum/utils/angle.hpp b/libs/third_party/tweedledum/utils/angle.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/angle.hpp rename to libs/third_party/tweedledum/utils/angle.hpp diff --git a/third_party/libs/tweedledum/utils/bit_matrix_cm.hpp b/libs/third_party/tweedledum/utils/bit_matrix_cm.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/bit_matrix_cm.hpp rename to libs/third_party/tweedledum/utils/bit_matrix_cm.hpp diff --git a/third_party/libs/tweedledum/utils/bit_matrix_rm.hpp b/libs/third_party/tweedledum/utils/bit_matrix_rm.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/bit_matrix_rm.hpp rename to libs/third_party/tweedledum/utils/bit_matrix_rm.hpp diff --git a/third_party/libs/tweedledum/utils/dd/zdd.hpp b/libs/third_party/tweedledum/utils/dd/zdd.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/dd/zdd.hpp rename to libs/third_party/tweedledum/utils/dd/zdd.hpp diff --git a/third_party/libs/tweedledum/utils/detail/bit_matrix.hpp b/libs/third_party/tweedledum/utils/detail/bit_matrix.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/detail/bit_matrix.hpp rename to libs/third_party/tweedledum/utils/detail/bit_matrix.hpp diff --git a/third_party/libs/tweedledum/utils/device.hpp b/libs/third_party/tweedledum/utils/device.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/device.hpp rename to libs/third_party/tweedledum/utils/device.hpp diff --git a/third_party/libs/tweedledum/utils/dynamic_bitset.hpp b/libs/third_party/tweedledum/utils/dynamic_bitset.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/dynamic_bitset.hpp rename to libs/third_party/tweedledum/utils/dynamic_bitset.hpp diff --git a/third_party/libs/tweedledum/utils/foreach.hpp b/libs/third_party/tweedledum/utils/foreach.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/foreach.hpp rename to libs/third_party/tweedledum/utils/foreach.hpp diff --git a/third_party/libs/tweedledum/utils/hash.hpp b/libs/third_party/tweedledum/utils/hash.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/hash.hpp rename to libs/third_party/tweedledum/utils/hash.hpp diff --git a/third_party/libs/tweedledum/utils/node_map.hpp b/libs/third_party/tweedledum/utils/node_map.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/node_map.hpp rename to libs/third_party/tweedledum/utils/node_map.hpp diff --git a/third_party/libs/tweedledum/utils/parity_terms.hpp b/libs/third_party/tweedledum/utils/parity_terms.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/parity_terms.hpp rename to libs/third_party/tweedledum/utils/parity_terms.hpp diff --git a/third_party/libs/tweedledum/utils/permute.hpp b/libs/third_party/tweedledum/utils/permute.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/permute.hpp rename to libs/third_party/tweedledum/utils/permute.hpp diff --git a/third_party/libs/tweedledum/utils/sat/cardinality.hpp b/libs/third_party/tweedledum/utils/sat/cardinality.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/sat/cardinality.hpp rename to libs/third_party/tweedledum/utils/sat/cardinality.hpp diff --git a/third_party/libs/tweedledum/utils/sat/solver.hpp b/libs/third_party/tweedledum/utils/sat/solver.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/sat/solver.hpp rename to libs/third_party/tweedledum/utils/sat/solver.hpp diff --git a/third_party/libs/tweedledum/utils/sat/types.hpp b/libs/third_party/tweedledum/utils/sat/types.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/sat/types.hpp rename to libs/third_party/tweedledum/utils/sat/types.hpp diff --git a/third_party/libs/tweedledum/utils/stopwatch.hpp b/libs/third_party/tweedledum/utils/stopwatch.hpp similarity index 100% rename from third_party/libs/tweedledum/utils/stopwatch.hpp rename to libs/third_party/tweedledum/utils/stopwatch.hpp diff --git a/third_party/libs/tweedledum/views/depth_view.hpp b/libs/third_party/tweedledum/views/depth_view.hpp similarity index 100% rename from third_party/libs/tweedledum/views/depth_view.hpp rename to libs/third_party/tweedledum/views/depth_view.hpp diff --git a/third_party/libs/tweedledum/views/immutable_view.hpp b/libs/third_party/tweedledum/views/immutable_view.hpp similarity index 100% rename from third_party/libs/tweedledum/views/immutable_view.hpp rename to libs/third_party/tweedledum/views/immutable_view.hpp diff --git a/third_party/libs/tweedledum/views/mapping_view.hpp b/libs/third_party/tweedledum/views/mapping_view.hpp similarity index 100% rename from third_party/libs/tweedledum/views/mapping_view.hpp rename to libs/third_party/tweedledum/views/mapping_view.hpp diff --git a/third_party/libs/tweedledum/views/pathsum_view.hpp b/libs/third_party/tweedledum/views/pathsum_view.hpp similarity index 100% rename from third_party/libs/tweedledum/views/pathsum_view.hpp rename to libs/third_party/tweedledum/views/pathsum_view.hpp diff --git a/third_party/libs/tweedledum/views/stats_view.hpp b/libs/third_party/tweedledum/views/stats_view.hpp similarity index 100% rename from third_party/libs/tweedledum/views/stats_view.hpp rename to libs/third_party/tweedledum/views/stats_view.hpp diff --git a/third_party/libs/zlib/zconf.h b/libs/third_party/zlib/zconf.h similarity index 100% rename from third_party/libs/zlib/zconf.h rename to libs/third_party/zlib/zconf.h diff --git a/third_party/libs/zlib/zlib.h b/libs/third_party/zlib/zlib.h similarity index 100% rename from third_party/libs/zlib/zlib.h rename to libs/third_party/zlib/zlib.h diff --git a/examples/bad.qasm b/misc/bad.qasm similarity index 100% rename from examples/bad.qasm rename to misc/bad.qasm diff --git a/examples/inline_test.qasm b/misc/inline_test.qasm similarity index 100% rename from examples/inline_test.qasm rename to misc/inline_test.qasm diff --git a/examples/mapping_test.qasm b/misc/mapping_test.qasm similarity index 100% rename from examples/mapping_test.qasm rename to misc/mapping_test.qasm diff --git a/examples/multi-ancilla_test.qasm b/misc/multi-ancilla_test.qasm similarity index 100% rename from examples/multi-ancilla_test.qasm rename to misc/multi-ancilla_test.qasm diff --git a/examples/oracle_example.qasm b/misc/oracle_example.qasm similarity index 100% rename from examples/oracle_example.qasm rename to misc/oracle_example.qasm diff --git a/examples/oracle_example_expanded.qasm b/misc/oracle_example_expanded.qasm similarity index 100% rename from examples/oracle_example_expanded.qasm rename to misc/oracle_example_expanded.qasm diff --git a/qpus/gen_ibm_singapore.sh b/misc/qpu_specs/gen_ibm_singapore.sh similarity index 100% rename from qpus/gen_ibm_singapore.sh rename to misc/qpu_specs/gen_ibm_singapore.sh diff --git a/qpus/gen_ibm_tokyo.sh b/misc/qpu_specs/gen_ibm_tokyo.sh similarity index 100% rename from qpus/gen_ibm_tokyo.sh rename to misc/qpu_specs/gen_ibm_tokyo.sh diff --git a/qpus/gen_rigetti_agave.sh b/misc/qpu_specs/gen_rigetti_agave.sh similarity index 100% rename from qpus/gen_rigetti_agave.sh rename to misc/qpu_specs/gen_rigetti_agave.sh diff --git a/qpus/gen_rigetti_aspen4.sh b/misc/qpu_specs/gen_rigetti_aspen4.sh similarity index 100% rename from qpus/gen_rigetti_aspen4.sh rename to misc/qpu_specs/gen_rigetti_aspen4.sh diff --git a/qpus/gen_square_9q.sh b/misc/qpu_specs/gen_square_9q.sh similarity index 100% rename from qpus/gen_square_9q.sh rename to misc/qpu_specs/gen_square_9q.sh diff --git a/qpus/ibm_singapore.json b/misc/qpu_specs/ibm_singapore.json similarity index 100% rename from qpus/ibm_singapore.json rename to misc/qpu_specs/ibm_singapore.json diff --git a/qpus/ibm_tokyo.json b/misc/qpu_specs/ibm_tokyo.json similarity index 100% rename from qpus/ibm_tokyo.json rename to misc/qpu_specs/ibm_tokyo.json diff --git a/qpus/rigetti_agave.json b/misc/qpu_specs/rigetti_agave.json similarity index 100% rename from qpus/rigetti_agave.json rename to misc/qpu_specs/rigetti_agave.json diff --git a/qpus/rigetti_aspen4.json b/misc/qpu_specs/rigetti_aspen4.json similarity index 100% rename from qpus/rigetti_aspen4.json rename to misc/qpu_specs/rigetti_aspen4.json diff --git a/qpus/square_9q.json b/misc/qpu_specs/square_9q.json similarity index 100% rename from qpus/square_9q.json rename to misc/qpu_specs/square_9q.json diff --git a/examples/rz_test1.qasm b/misc/rz_test1.qasm similarity index 100% rename from examples/rz_test1.qasm rename to misc/rz_test1.qasm diff --git a/examples/rz_test2.qasm b/misc/rz_test2.qasm similarity index 100% rename from examples/rz_test2.qasm rename to misc/rz_test2.qasm diff --git a/examples/rz_test3.qasm b/misc/rz_test3.qasm similarity index 100% rename from examples/rz_test3.qasm rename to misc/rz_test3.qasm diff --git a/scripts/gridsynth2qasm.sh b/misc/scripts/gridsynth2qasm.sh similarity index 100% rename from scripts/gridsynth2qasm.sh rename to misc/scripts/gridsynth2qasm.sh diff --git a/scripts/s3_table_file.csv b/misc/scripts/s3_table_file.csv similarity index 100% rename from scripts/s3_table_file.csv rename to misc/scripts/s3_table_file.csv diff --git a/scripts/staq_grid_synth2qasm.sh b/misc/scripts/staq_grid_synth2qasm.sh similarity index 100% rename from scripts/staq_grid_synth2qasm.sh rename to misc/scripts/staq_grid_synth2qasm.sh diff --git a/examples/showcase.qasm b/misc/showcase.qasm similarity index 100% rename from examples/showcase.qasm rename to misc/showcase.qasm diff --git a/examples/staq_paper/add_3_5.qasm b/misc/staq_paper/add_3_5.qasm similarity index 100% rename from examples/staq_paper/add_3_5.qasm rename to misc/staq_paper/add_3_5.qasm diff --git a/examples/staq_paper/add_3_5_compiled.quil b/misc/staq_paper/add_3_5_compiled.quil similarity index 100% rename from examples/staq_paper/add_3_5_compiled.quil rename to misc/staq_paper/add_3_5_compiled.quil diff --git a/examples/staq_paper/add_3_5_compiled_mapped.quil b/misc/staq_paper/add_3_5_compiled_mapped.quil similarity index 100% rename from examples/staq_paper/add_3_5_compiled_mapped.quil rename to misc/staq_paper/add_3_5_compiled_mapped.quil diff --git a/examples/staq_paper/add_3_5_synthesized.qasm b/misc/staq_paper/add_3_5_synthesized.qasm similarity index 100% rename from examples/staq_paper/add_3_5_synthesized.qasm rename to misc/staq_paper/add_3_5_synthesized.qasm diff --git a/examples/staq_paper/adder_4.v b/misc/staq_paper/adder_4.v similarity index 100% rename from examples/staq_paper/adder_4.v rename to misc/staq_paper/adder_4.v diff --git a/examples/staq_paper/benchmarks/adder_8.qasm b/misc/staq_paper/benchmarks/adder_8.qasm similarity index 100% rename from examples/staq_paper/benchmarks/adder_8.qasm rename to misc/staq_paper/benchmarks/adder_8.qasm diff --git a/examples/staq_paper/benchmarks/barenco_tof_10.qasm b/misc/staq_paper/benchmarks/barenco_tof_10.qasm similarity index 100% rename from examples/staq_paper/benchmarks/barenco_tof_10.qasm rename to misc/staq_paper/benchmarks/barenco_tof_10.qasm diff --git a/examples/staq_paper/benchmarks/barenco_tof_3.qasm b/misc/staq_paper/benchmarks/barenco_tof_3.qasm similarity index 100% rename from examples/staq_paper/benchmarks/barenco_tof_3.qasm rename to misc/staq_paper/benchmarks/barenco_tof_3.qasm diff --git a/examples/staq_paper/benchmarks/barenco_tof_4.qasm b/misc/staq_paper/benchmarks/barenco_tof_4.qasm similarity index 100% rename from examples/staq_paper/benchmarks/barenco_tof_4.qasm rename to misc/staq_paper/benchmarks/barenco_tof_4.qasm diff --git a/examples/staq_paper/benchmarks/barenco_tof_5.qasm b/misc/staq_paper/benchmarks/barenco_tof_5.qasm similarity index 100% rename from examples/staq_paper/benchmarks/barenco_tof_5.qasm rename to misc/staq_paper/benchmarks/barenco_tof_5.qasm diff --git a/examples/staq_paper/benchmarks/csla_mux_3.qasm b/misc/staq_paper/benchmarks/csla_mux_3.qasm similarity index 100% rename from examples/staq_paper/benchmarks/csla_mux_3.qasm rename to misc/staq_paper/benchmarks/csla_mux_3.qasm diff --git a/examples/staq_paper/benchmarks/csum_mux_9.qasm b/misc/staq_paper/benchmarks/csum_mux_9.qasm similarity index 100% rename from examples/staq_paper/benchmarks/csum_mux_9.qasm rename to misc/staq_paper/benchmarks/csum_mux_9.qasm diff --git a/examples/staq_paper/benchmarks/cycle_17_3.qasm b/misc/staq_paper/benchmarks/cycle_17_3.qasm similarity index 100% rename from examples/staq_paper/benchmarks/cycle_17_3.qasm rename to misc/staq_paper/benchmarks/cycle_17_3.qasm diff --git a/examples/staq_paper/benchmarks/gf2^10_mult.qasm b/misc/staq_paper/benchmarks/gf2^10_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^10_mult.qasm rename to misc/staq_paper/benchmarks/gf2^10_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^128_mult.qasm b/misc/staq_paper/benchmarks/gf2^128_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^128_mult.qasm rename to misc/staq_paper/benchmarks/gf2^128_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^16_mult.qasm b/misc/staq_paper/benchmarks/gf2^16_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^16_mult.qasm rename to misc/staq_paper/benchmarks/gf2^16_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^256_mult.qasm b/misc/staq_paper/benchmarks/gf2^256_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^256_mult.qasm rename to misc/staq_paper/benchmarks/gf2^256_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^32_mult.qasm b/misc/staq_paper/benchmarks/gf2^32_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^32_mult.qasm rename to misc/staq_paper/benchmarks/gf2^32_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^4_mult.qasm b/misc/staq_paper/benchmarks/gf2^4_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^4_mult.qasm rename to misc/staq_paper/benchmarks/gf2^4_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^5_mult.qasm b/misc/staq_paper/benchmarks/gf2^5_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^5_mult.qasm rename to misc/staq_paper/benchmarks/gf2^5_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^64_mult.qasm b/misc/staq_paper/benchmarks/gf2^64_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^64_mult.qasm rename to misc/staq_paper/benchmarks/gf2^64_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^6_mult.qasm b/misc/staq_paper/benchmarks/gf2^6_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^6_mult.qasm rename to misc/staq_paper/benchmarks/gf2^6_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^7_mult.qasm b/misc/staq_paper/benchmarks/gf2^7_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^7_mult.qasm rename to misc/staq_paper/benchmarks/gf2^7_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^8_mult.qasm b/misc/staq_paper/benchmarks/gf2^8_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^8_mult.qasm rename to misc/staq_paper/benchmarks/gf2^8_mult.qasm diff --git a/examples/staq_paper/benchmarks/gf2^9_mult.qasm b/misc/staq_paper/benchmarks/gf2^9_mult.qasm similarity index 100% rename from examples/staq_paper/benchmarks/gf2^9_mult.qasm rename to misc/staq_paper/benchmarks/gf2^9_mult.qasm diff --git a/examples/staq_paper/benchmarks/grover_5.qasm b/misc/staq_paper/benchmarks/grover_5.qasm similarity index 100% rename from examples/staq_paper/benchmarks/grover_5.qasm rename to misc/staq_paper/benchmarks/grover_5.qasm diff --git a/examples/staq_paper/benchmarks/ham15-high.qasm b/misc/staq_paper/benchmarks/ham15-high.qasm similarity index 100% rename from examples/staq_paper/benchmarks/ham15-high.qasm rename to misc/staq_paper/benchmarks/ham15-high.qasm diff --git a/examples/staq_paper/benchmarks/ham15-low.qasm b/misc/staq_paper/benchmarks/ham15-low.qasm similarity index 100% rename from examples/staq_paper/benchmarks/ham15-low.qasm rename to misc/staq_paper/benchmarks/ham15-low.qasm diff --git a/examples/staq_paper/benchmarks/ham15-med.qasm b/misc/staq_paper/benchmarks/ham15-med.qasm similarity index 100% rename from examples/staq_paper/benchmarks/ham15-med.qasm rename to misc/staq_paper/benchmarks/ham15-med.qasm diff --git a/examples/staq_paper/benchmarks/hwb10.qasm b/misc/staq_paper/benchmarks/hwb10.qasm similarity index 100% rename from examples/staq_paper/benchmarks/hwb10.qasm rename to misc/staq_paper/benchmarks/hwb10.qasm diff --git a/examples/staq_paper/benchmarks/hwb11.qasm b/misc/staq_paper/benchmarks/hwb11.qasm similarity index 100% rename from examples/staq_paper/benchmarks/hwb11.qasm rename to misc/staq_paper/benchmarks/hwb11.qasm diff --git a/examples/staq_paper/benchmarks/hwb12.qasm b/misc/staq_paper/benchmarks/hwb12.qasm similarity index 100% rename from examples/staq_paper/benchmarks/hwb12.qasm rename to misc/staq_paper/benchmarks/hwb12.qasm diff --git a/examples/staq_paper/benchmarks/hwb6.qasm b/misc/staq_paper/benchmarks/hwb6.qasm similarity index 100% rename from examples/staq_paper/benchmarks/hwb6.qasm rename to misc/staq_paper/benchmarks/hwb6.qasm diff --git a/examples/staq_paper/benchmarks/hwb8.qasm b/misc/staq_paper/benchmarks/hwb8.qasm similarity index 100% rename from examples/staq_paper/benchmarks/hwb8.qasm rename to misc/staq_paper/benchmarks/hwb8.qasm diff --git a/examples/staq_paper/benchmarks/mod5_4.qasm b/misc/staq_paper/benchmarks/mod5_4.qasm similarity index 100% rename from examples/staq_paper/benchmarks/mod5_4.qasm rename to misc/staq_paper/benchmarks/mod5_4.qasm diff --git a/examples/staq_paper/benchmarks/mod_adder_1024.qasm b/misc/staq_paper/benchmarks/mod_adder_1024.qasm similarity index 100% rename from examples/staq_paper/benchmarks/mod_adder_1024.qasm rename to misc/staq_paper/benchmarks/mod_adder_1024.qasm diff --git a/examples/staq_paper/benchmarks/mod_adder_1048576.qasm b/misc/staq_paper/benchmarks/mod_adder_1048576.qasm similarity index 100% rename from examples/staq_paper/benchmarks/mod_adder_1048576.qasm rename to misc/staq_paper/benchmarks/mod_adder_1048576.qasm diff --git a/examples/staq_paper/benchmarks/mod_mult_55.qasm b/misc/staq_paper/benchmarks/mod_mult_55.qasm similarity index 100% rename from examples/staq_paper/benchmarks/mod_mult_55.qasm rename to misc/staq_paper/benchmarks/mod_mult_55.qasm diff --git a/examples/staq_paper/benchmarks/mod_red_21.qasm b/misc/staq_paper/benchmarks/mod_red_21.qasm similarity index 100% rename from examples/staq_paper/benchmarks/mod_red_21.qasm rename to misc/staq_paper/benchmarks/mod_red_21.qasm diff --git a/examples/staq_paper/benchmarks/qcla_adder_10.qasm b/misc/staq_paper/benchmarks/qcla_adder_10.qasm similarity index 100% rename from examples/staq_paper/benchmarks/qcla_adder_10.qasm rename to misc/staq_paper/benchmarks/qcla_adder_10.qasm diff --git a/examples/staq_paper/benchmarks/qcla_com_7.qasm b/misc/staq_paper/benchmarks/qcla_com_7.qasm similarity index 100% rename from examples/staq_paper/benchmarks/qcla_com_7.qasm rename to misc/staq_paper/benchmarks/qcla_com_7.qasm diff --git a/examples/staq_paper/benchmarks/qcla_mod_7.qasm b/misc/staq_paper/benchmarks/qcla_mod_7.qasm similarity index 100% rename from examples/staq_paper/benchmarks/qcla_mod_7.qasm rename to misc/staq_paper/benchmarks/qcla_mod_7.qasm diff --git a/examples/staq_paper/benchmarks/qft_4.qasm b/misc/staq_paper/benchmarks/qft_4.qasm similarity index 100% rename from examples/staq_paper/benchmarks/qft_4.qasm rename to misc/staq_paper/benchmarks/qft_4.qasm diff --git a/examples/staq_paper/benchmarks/rc_adder_6.qasm b/misc/staq_paper/benchmarks/rc_adder_6.qasm similarity index 100% rename from examples/staq_paper/benchmarks/rc_adder_6.qasm rename to misc/staq_paper/benchmarks/rc_adder_6.qasm diff --git a/examples/staq_paper/benchmarks/tof_10.qasm b/misc/staq_paper/benchmarks/tof_10.qasm similarity index 100% rename from examples/staq_paper/benchmarks/tof_10.qasm rename to misc/staq_paper/benchmarks/tof_10.qasm diff --git a/examples/staq_paper/benchmarks/tof_3.qasm b/misc/staq_paper/benchmarks/tof_3.qasm similarity index 100% rename from examples/staq_paper/benchmarks/tof_3.qasm rename to misc/staq_paper/benchmarks/tof_3.qasm diff --git a/examples/staq_paper/benchmarks/tof_4.qasm b/misc/staq_paper/benchmarks/tof_4.qasm similarity index 100% rename from examples/staq_paper/benchmarks/tof_4.qasm rename to misc/staq_paper/benchmarks/tof_4.qasm diff --git a/examples/staq_paper/benchmarks/tof_5.qasm b/misc/staq_paper/benchmarks/tof_5.qasm similarity index 100% rename from examples/staq_paper/benchmarks/tof_5.qasm rename to misc/staq_paper/benchmarks/tof_5.qasm diff --git a/examples/staq_paper/benchmarks/vbe_adder_3.qasm b/misc/staq_paper/benchmarks/vbe_adder_3.qasm similarity index 100% rename from examples/staq_paper/benchmarks/vbe_adder_3.qasm rename to misc/staq_paper/benchmarks/vbe_adder_3.qasm diff --git a/examples/staq_paper/run_qiskit.sh b/misc/staq_paper/run_qiskit.sh similarity index 100% rename from examples/staq_paper/run_qiskit.sh rename to misc/staq_paper/run_qiskit.sh diff --git a/examples/staq_paper/run_staq.sh b/misc/staq_paper/run_staq.sh similarity index 100% rename from examples/staq_paper/run_staq.sh rename to misc/staq_paper/run_staq.sh diff --git a/examples/teleport.qasm b/misc/teleport.qasm similarity index 100% rename from examples/teleport.qasm rename to misc/teleport.qasm diff --git a/examples/test.qasm b/misc/test.qasm similarity index 100% rename from examples/test.qasm rename to misc/test.qasm diff --git a/examples/toffoli_4.v b/misc/toffoli_4.v similarity index 100% rename from examples/toffoli_4.v rename to misc/toffoli_4.v diff --git a/pystaq/staq_wrapper.cpp b/pystaq/staq_wrapper.cpp index 408a799f..658918de 100644 --- a/pystaq/staq_wrapper.cpp +++ b/pystaq/staq_wrapper.cpp @@ -30,8 +30,8 @@ #include -#include -#include +#include +#include #include "qasmtools/parser/parser.hpp" diff --git a/staq/CMakeLists.txt b/src/staq/CMakeLists.txt similarity index 100% rename from staq/CMakeLists.txt rename to src/staq/CMakeLists.txt diff --git a/staq/main.cpp b/src/staq/main.cpp similarity index 99% rename from staq/main.cpp rename to src/staq/main.cpp index f3832805..d040915d 100644 --- a/staq/main.cpp +++ b/src/staq/main.cpp @@ -26,7 +26,7 @@ #include -#include +#include #include "qasmtools/parser/parser.hpp" diff --git a/tools/CMakeLists.txt b/src/tools/CMakeLists.txt similarity index 100% rename from tools/CMakeLists.txt rename to src/tools/CMakeLists.txt diff --git a/tools/circ.cpp b/src/tools/circ.cpp similarity index 98% rename from tools/circ.cpp rename to src/tools/circ.cpp index 1df26bcd..83ccb647 100644 --- a/tools/circ.cpp +++ b/src/tools/circ.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "output/cirq.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/desugarer.cpp b/src/tools/desugarer.cpp similarity index 100% rename from tools/desugarer.cpp rename to src/tools/desugarer.cpp diff --git a/tools/device_generator.cpp b/src/tools/device_generator.cpp similarity index 99% rename from tools/device_generator.cpp rename to src/tools/device_generator.cpp index c9609014..f596759d 100644 --- a/tools/device_generator.cpp +++ b/src/tools/device_generator.cpp @@ -26,7 +26,7 @@ #include -#include +#include #include "mapping/device.hpp" diff --git a/tools/grid_synth.cpp b/src/tools/grid_synth.cpp similarity index 99% rename from tools/grid_synth.cpp rename to src/tools/grid_synth.cpp index d1c140f4..8424aa99 100644 --- a/tools/grid_synth.cpp +++ b/src/tools/grid_synth.cpp @@ -29,7 +29,7 @@ #include #include -#include +#include #include "grid_synth/exact_synthesis.hpp" #include "grid_synth/grid_synth.hpp" diff --git a/tools/inliner.cpp b/src/tools/inliner.cpp similarity index 98% rename from tools/inliner.cpp rename to src/tools/inliner.cpp index 1ee14209..9c965a41 100644 --- a/tools/inliner.cpp +++ b/src/tools/inliner.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "qasmtools/parser/parser.hpp" #include "transformations/inline.hpp" diff --git a/tools/lattice_surgery.cpp b/src/tools/lattice_surgery.cpp similarity index 98% rename from tools/lattice_surgery.cpp rename to src/tools/lattice_surgery.cpp index c0cb0bb1..bf40318e 100644 --- a/tools/lattice_surgery.cpp +++ b/src/tools/lattice_surgery.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "output/lattice_surgery.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/mapper.cpp b/src/tools/mapper.cpp similarity index 99% rename from tools/mapper.cpp rename to src/tools/mapper.cpp index 173bc0f2..fbae016b 100644 --- a/tools/mapper.cpp +++ b/src/tools/mapper.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "qasmtools/parser/parser.hpp" #include "tools/qubit_estimator.hpp" diff --git a/tools/oracle_synthesizer.cpp b/src/tools/oracle_synthesizer.cpp similarity index 100% rename from tools/oracle_synthesizer.cpp rename to src/tools/oracle_synthesizer.cpp diff --git a/tools/projectq.cpp b/src/tools/projectq.cpp similarity index 98% rename from tools/projectq.cpp rename to src/tools/projectq.cpp index 4446a188..f22b2ae4 100644 --- a/tools/projectq.cpp +++ b/src/tools/projectq.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "output/projectq.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/qasm_synth.cpp b/src/tools/qasm_synth.cpp similarity index 98% rename from tools/qasm_synth.cpp rename to src/tools/qasm_synth.cpp index dc9def6a..68ed9e4e 100644 --- a/tools/qasm_synth.cpp +++ b/src/tools/qasm_synth.cpp @@ -26,7 +26,7 @@ #include -#include +#include #include "grid_synth/gmp_functions.hpp" #include "grid_synth/types.hpp" diff --git a/tools/qsharp.cpp b/src/tools/qsharp.cpp similarity index 98% rename from tools/qsharp.cpp rename to src/tools/qsharp.cpp index 05b152d3..bf0328fd 100644 --- a/tools/qsharp.cpp +++ b/src/tools/qsharp.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "output/qsharp.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/quil.cpp b/src/tools/quil.cpp similarity index 98% rename from tools/quil.cpp rename to src/tools/quil.cpp index fee1aead..e10c3627 100644 --- a/tools/quil.cpp +++ b/src/tools/quil.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "output/quil.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/resource_estimator.cpp b/src/tools/resource_estimator.cpp similarity index 98% rename from tools/resource_estimator.cpp rename to src/tools/resource_estimator.cpp index 1efafb77..09981847 100644 --- a/tools/resource_estimator.cpp +++ b/src/tools/resource_estimator.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "qasmtools/parser/parser.hpp" #include "tools/resource_estimator.hpp" diff --git a/tools/rotation_optimizer.cpp b/src/tools/rotation_optimizer.cpp similarity index 98% rename from tools/rotation_optimizer.cpp rename to src/tools/rotation_optimizer.cpp index c106ae1f..86eb4c34 100644 --- a/tools/rotation_optimizer.cpp +++ b/src/tools/rotation_optimizer.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "optimization/rotation_folding.hpp" #include "qasmtools/parser/parser.hpp" diff --git a/tools/simplifier.cpp b/src/tools/simplifier.cpp similarity index 98% rename from tools/simplifier.cpp rename to src/tools/simplifier.cpp index 5c9f3c29..7ffeefd6 100644 --- a/tools/simplifier.cpp +++ b/src/tools/simplifier.cpp @@ -24,7 +24,7 @@ * SOFTWARE. */ -#include +#include #include "optimization/simplify.hpp" #include "qasmtools/parser/parser.hpp" From 601792d0196e2e7eaae4b1da5f3b8d71fd2e3df7 Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Tue, 28 Nov 2023 12:45:03 -0500 Subject: [PATCH 06/11] Update setup.py --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index e7deb1a1..fe04e8b1 100644 --- a/setup.py +++ b/setup.py @@ -7,7 +7,7 @@ import ctypes.util as ctu import platform # to learn the OS we're on -extra_compile_args = ["-Ithird_party", "-Iinclude", "-Iqasmtools/include"] +extra_compile_args = ["-Ilibs/third_party", "-Iinclude", "-Iqasmtools/include"] extra_links_args = [] From 629d1f1db3158d0abd63f45967394c641f6c03cd Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Tue, 28 Nov 2023 12:46:54 -0500 Subject: [PATCH 07/11] Update cmake.yml --- .github/workflows/cmake.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 515a7ee8..31ca0a32 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -77,9 +77,9 @@ jobs: shell: bash run: | if [ "$RUNNER_OS" == "Windows" ]; then - ./examples/standalone/build/${{env.BUILD_TYPE}}/standalone.exe + ./examples/standalone/build/${{env.BUILD_TYPE}}/standalone.exe --version else - ./examples/standalone/build/standalone + ./examples/standalone/build/standalone --version fi - name: Build unit tests From 8b56ca2deab888fed7765dada3aa60d22a19adad Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Tue, 28 Nov 2023 12:54:48 -0500 Subject: [PATCH 08/11] Update device.cpp --- unit_tests/tests/mapping/device.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unit_tests/tests/mapping/device.cpp b/unit_tests/tests/mapping/device.cpp index 49337cb0..550ce578 100644 --- a/unit_tests/tests/mapping/device.cpp +++ b/unit_tests/tests/mapping/device.cpp @@ -70,7 +70,7 @@ TEST(Device, Shortest_Path) { /******************************************************************************/ TEST(Device, Shortest_Path_tokyo) { mapping::Device test = - mapping::parse_json(PROJECT_ROOT_DIR "/qpus/ibm_tokyo.json"); + mapping::parse_json(PROJECT_ROOT_DIR "/misc/qpu_specs/ibm_tokyo.json"); EXPECT_TRUE(test.coupled(8, 7)); EXPECT_TRUE(test.coupled(7, 6)); From 1ec32ea51f639915c01c7d6eb6e2cc9c600f0a0c Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Tue, 28 Nov 2023 13:01:40 -0500 Subject: [PATCH 09/11] update --- INSTALL.md | 8 ++++---- cmake/staqConfig.cmake.in | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index cd882fd2..39638bda 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -89,15 +89,15 @@ cmake --build build --target (un)install staq's source code will be installed in `/usr/local/include/staq` (UNIX/UNIX-like systems), or in `C:\Program Files (x86)\staq` on Windows -systems. The paths may differ on your system. To use staq's sources, precede all -include paths by `staq`, i.e., +systems. The paths may differ on your system. To use staq's source code, precede +all include paths by `staq` in your own code, i.e., ```c++ #include ``` -Third party header-only libraries will need to be preceded by `third_party` when -including their corresponding header file, i.e., +Third party header-only libraries need to be preceded by `third_party` when +including their corresponding header file(s), i.e., ```c++ #include diff --git a/cmake/staqConfig.cmake.in b/cmake/staqConfig.cmake.in index d8723cbe..71e0df67 100644 --- a/cmake/staqConfig.cmake.in +++ b/cmake/staqConfig.cmake.in @@ -1,4 +1,4 @@ @PACKAGE_INIT@ include("${CMAKE_CURRENT_LIST_DIR}/staq_targets.cmake") -message(STATUS "Found staq in @STAQ_INSTALL_DIR@") +message(STATUS "Found staq's source code in @STAQ_INSTALL_DIR@") From 55128b4c1cbf9c1db95ec6d71770ae55346b1795 Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Tue, 28 Nov 2023 13:04:08 -0500 Subject: [PATCH 10/11] Update CHANGES --- CHANGES | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 079aab63..86263cf9 100644 --- a/CHANGES +++ b/CHANGES @@ -1,5 +1,6 @@ Pre-release - - Source code is now installing when `cmake --build build --target install` + - `cmake --build build --target install` now installs staq's source code in + addition to the binaries - Renamed the "examples" directory to "misc" - Moved "qpu_specs" and "scripts" directories to "misc" - Added standalone source code example (requires staq installation) in the From edbb2af4c3af85db6a70900dd0a702d457523d0f Mon Sep 17 00:00:00 2001 From: Vlad Gheorghiu Date: Tue, 28 Nov 2023 13:32:26 -0500 Subject: [PATCH 11/11] fixing Windows issue --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index bd564a2c..a2107eab 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -24,7 +24,7 @@ endif () #### Windows issues with Microsoft Visual Studio if (MSVC) - include_directories(SYSTEM libs/pthreadwin32) + include_directories(SYSTEM third_party/libs/pthreadwin32) add_compile_options(-bigobj) add_compile_definitions(NOMINMAX) if (MSVC_VERSION GREATER_EQUAL 1914)