@ladybugmem/icebug 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/binding.gyp +32 -10
- package/lib/index.js +23 -11
- package/package.json +8 -13
- package/prebuilds/darwin-arm64/icebug.node +0 -0
- package/{vendor/lib → prebuilds/darwin-arm64}/libnetworkit.dylib +0 -0
- package/prebuilds/linux-x64/icebug.node +0 -0
- package/prebuilds/linux-x64/libnetworkit.so +0 -0
- package/scripts/download-icebug.sh +92 -0
- package/build/Release/.deps/Release/icebug.node.d +0 -1
- package/build/Release/.deps/Release/obj.target/icebug/src/addon.o.d +0 -291
- package/build/Release/icebug.node +0 -0
- package/build/Release/obj.target/icebug/src/addon.o +0 -0
- package/vendor/include/networkit/GlobalState.hpp +0 -86
- package/vendor/include/networkit/Globals.hpp +0 -41
- package/vendor/include/networkit/algebraic/AlgebraicGlobals.hpp +0 -27
- package/vendor/include/networkit/algebraic/CSRGeneralMatrix.hpp +0 -1292
- package/vendor/include/networkit/algebraic/CSRMatrix.hpp +0 -11
- package/vendor/include/networkit/algebraic/DenseMatrix.hpp +0 -537
- package/vendor/include/networkit/algebraic/DynamicMatrix.hpp +0 -514
- package/vendor/include/networkit/algebraic/GraphBLAS.hpp +0 -323
- package/vendor/include/networkit/algebraic/MatrixTools.hpp +0 -156
- package/vendor/include/networkit/algebraic/Semirings.hpp +0 -171
- package/vendor/include/networkit/algebraic/SparseAccumulator.hpp +0 -111
- package/vendor/include/networkit/algebraic/Vector.hpp +0 -371
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicBFS.hpp +0 -72
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicBellmanFord.hpp +0 -88
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicMatchingCoarsening.hpp +0 -96
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicPageRank.hpp +0 -145
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicSpanningEdgeCentrality.hpp +0 -122
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicTriangleCounting.hpp +0 -76
- package/vendor/include/networkit/auxiliary/AlignedAllocator.hpp +0 -113
- package/vendor/include/networkit/auxiliary/ArrayTools.hpp +0 -85
- package/vendor/include/networkit/auxiliary/BloomFilter.hpp +0 -70
- package/vendor/include/networkit/auxiliary/BucketPQ.hpp +0 -142
- package/vendor/include/networkit/auxiliary/Enforce.hpp +0 -117
- package/vendor/include/networkit/auxiliary/FunctionTraits.hpp +0 -74
- package/vendor/include/networkit/auxiliary/HashUtils.hpp +0 -28
- package/vendor/include/networkit/auxiliary/IncrementalUniformRandomSelector.hpp +0 -52
- package/vendor/include/networkit/auxiliary/Log.hpp +0 -119
- package/vendor/include/networkit/auxiliary/MissingMath.hpp +0 -48
- package/vendor/include/networkit/auxiliary/Multiprecision.hpp +0 -17
- package/vendor/include/networkit/auxiliary/NumberParsing.hpp +0 -307
- package/vendor/include/networkit/auxiliary/NumericTools.hpp +0 -57
- package/vendor/include/networkit/auxiliary/Parallel.hpp +0 -56
- package/vendor/include/networkit/auxiliary/Parallelism.hpp +0 -33
- package/vendor/include/networkit/auxiliary/PrioQueue.hpp +0 -252
- package/vendor/include/networkit/auxiliary/Random.hpp +0 -122
- package/vendor/include/networkit/auxiliary/SetIntersector.hpp +0 -72
- package/vendor/include/networkit/auxiliary/SignalHandling.hpp +0 -39
- package/vendor/include/networkit/auxiliary/SortedList.hpp +0 -128
- package/vendor/include/networkit/auxiliary/SparseVector.hpp +0 -215
- package/vendor/include/networkit/auxiliary/SpinLock.hpp +0 -23
- package/vendor/include/networkit/auxiliary/StringBuilder.hpp +0 -322
- package/vendor/include/networkit/auxiliary/StringTools.hpp +0 -76
- package/vendor/include/networkit/auxiliary/TemplateUtils.hpp +0 -76
- package/vendor/include/networkit/auxiliary/Timer.hpp +0 -145
- package/vendor/include/networkit/auxiliary/VectorComparator.hpp +0 -32
- package/vendor/include/networkit/base/Algorithm.hpp +0 -41
- package/vendor/include/networkit/base/DynAlgorithm.hpp +0 -31
- package/vendor/include/networkit/centrality/ApproxBetweenness.hpp +0 -62
- package/vendor/include/networkit/centrality/ApproxCloseness.hpp +0 -136
- package/vendor/include/networkit/centrality/ApproxElectricalCloseness.hpp +0 -156
- package/vendor/include/networkit/centrality/ApproxGroupBetweenness.hpp +0 -124
- package/vendor/include/networkit/centrality/ApproxSpanningEdge.hpp +0 -84
- package/vendor/include/networkit/centrality/Betweenness.hpp +0 -47
- package/vendor/include/networkit/centrality/Centrality.hpp +0 -98
- package/vendor/include/networkit/centrality/Closeness.hpp +0 -107
- package/vendor/include/networkit/centrality/ComplexPaths.hpp +0 -113
- package/vendor/include/networkit/centrality/CoreDecomposition.hpp +0 -161
- package/vendor/include/networkit/centrality/DegreeCentrality.hpp +0 -55
- package/vendor/include/networkit/centrality/DynApproxBetweenness.hpp +0 -95
- package/vendor/include/networkit/centrality/DynBetweenness.hpp +0 -99
- package/vendor/include/networkit/centrality/DynBetweennessOneNode.hpp +0 -98
- package/vendor/include/networkit/centrality/DynKatzCentrality.hpp +0 -115
- package/vendor/include/networkit/centrality/DynTopHarmonicCloseness.hpp +0 -223
- package/vendor/include/networkit/centrality/EigenvectorCentrality.hpp +0 -41
- package/vendor/include/networkit/centrality/EstimateBetweenness.hpp +0 -51
- package/vendor/include/networkit/centrality/ForestCentrality.hpp +0 -112
- package/vendor/include/networkit/centrality/GedWalk.hpp +0 -225
- package/vendor/include/networkit/centrality/GroupCloseness.hpp +0 -115
- package/vendor/include/networkit/centrality/GroupClosenessGrowShrink.hpp +0 -78
- package/vendor/include/networkit/centrality/GroupClosenessLocalSearch.hpp +0 -77
- package/vendor/include/networkit/centrality/GroupClosenessLocalSwaps.hpp +0 -106
- package/vendor/include/networkit/centrality/GroupDegree.hpp +0 -155
- package/vendor/include/networkit/centrality/GroupHarmonicCloseness.hpp +0 -83
- package/vendor/include/networkit/centrality/HarmonicCloseness.hpp +0 -48
- package/vendor/include/networkit/centrality/KPathCentrality.hpp +0 -52
- package/vendor/include/networkit/centrality/KadabraBetweenness.hpp +0 -242
- package/vendor/include/networkit/centrality/KatzCentrality.hpp +0 -62
- package/vendor/include/networkit/centrality/LaplacianCentrality.hpp +0 -44
- package/vendor/include/networkit/centrality/LocalClusteringCoefficient.hpp +0 -60
- package/vendor/include/networkit/centrality/LocalPartitionCoverage.hpp +0 -43
- package/vendor/include/networkit/centrality/LocalSquareClusteringCoefficient.hpp +0 -42
- package/vendor/include/networkit/centrality/PageRank.hpp +0 -101
- package/vendor/include/networkit/centrality/PermanenceCentrality.hpp +0 -48
- package/vendor/include/networkit/centrality/Sfigality.hpp +0 -45
- package/vendor/include/networkit/centrality/SpanningEdgeCentrality.hpp +0 -86
- package/vendor/include/networkit/centrality/TopCloseness.hpp +0 -136
- package/vendor/include/networkit/centrality/TopHarmonicCloseness.hpp +0 -151
- package/vendor/include/networkit/clique/MaximalCliques.hpp +0 -83
- package/vendor/include/networkit/coarsening/ClusteringProjector.hpp +0 -59
- package/vendor/include/networkit/coarsening/CoarsenedGraphView.hpp +0 -156
- package/vendor/include/networkit/coarsening/GraphCoarsening.hpp +0 -57
- package/vendor/include/networkit/coarsening/MatchingCoarsening.hpp +0 -43
- package/vendor/include/networkit/coarsening/ParallelPartitionCoarsening.hpp +0 -33
- package/vendor/include/networkit/coarsening/ParallelPartitionCoarseningView.hpp +0 -62
- package/vendor/include/networkit/community/AdjustedRandMeasure.hpp +0 -31
- package/vendor/include/networkit/community/ClusteringGenerator.hpp +0 -75
- package/vendor/include/networkit/community/CommunityDetectionAlgorithm.hpp +0 -58
- package/vendor/include/networkit/community/Conductance.hpp +0 -32
- package/vendor/include/networkit/community/CoverF1Similarity.hpp +0 -53
- package/vendor/include/networkit/community/CoverHubDominance.hpp +0 -38
- package/vendor/include/networkit/community/Coverage.hpp +0 -25
- package/vendor/include/networkit/community/CutClustering.hpp +0 -62
- package/vendor/include/networkit/community/DissimilarityMeasure.hpp +0 -31
- package/vendor/include/networkit/community/DynamicNMIDistance.hpp +0 -44
- package/vendor/include/networkit/community/EdgeCut.hpp +0 -24
- package/vendor/include/networkit/community/GraphClusteringTools.hpp +0 -103
- package/vendor/include/networkit/community/GraphStructuralRandMeasure.hpp +0 -28
- package/vendor/include/networkit/community/HubDominance.hpp +0 -46
- package/vendor/include/networkit/community/IntrapartitionDensity.hpp +0 -44
- package/vendor/include/networkit/community/IsolatedInterpartitionConductance.hpp +0 -40
- package/vendor/include/networkit/community/IsolatedInterpartitionExpansion.hpp +0 -40
- package/vendor/include/networkit/community/JaccardMeasure.hpp +0 -25
- package/vendor/include/networkit/community/LFM.hpp +0 -49
- package/vendor/include/networkit/community/LPDegreeOrdered.hpp +0 -48
- package/vendor/include/networkit/community/LocalCommunityEvaluation.hpp +0 -100
- package/vendor/include/networkit/community/LocalCoverEvaluation.hpp +0 -31
- package/vendor/include/networkit/community/LocalPartitionEvaluation.hpp +0 -31
- package/vendor/include/networkit/community/LouvainMapEquation.hpp +0 -135
- package/vendor/include/networkit/community/Modularity.hpp +0 -54
- package/vendor/include/networkit/community/NMIDistance.hpp +0 -28
- package/vendor/include/networkit/community/NodeStructuralRandMeasure.hpp +0 -27
- package/vendor/include/networkit/community/OverlappingCommunityDetectionAlgorithm.hpp +0 -51
- package/vendor/include/networkit/community/OverlappingNMIDistance.hpp +0 -175
- package/vendor/include/networkit/community/PLM.hpp +0 -89
- package/vendor/include/networkit/community/PLP.hpp +0 -83
- package/vendor/include/networkit/community/ParallelAgglomerativeClusterer.hpp +0 -37
- package/vendor/include/networkit/community/ParallelLeiden.hpp +0 -96
- package/vendor/include/networkit/community/ParallelLeidenView.hpp +0 -138
- package/vendor/include/networkit/community/PartitionFragmentation.hpp +0 -30
- package/vendor/include/networkit/community/PartitionHubDominance.hpp +0 -37
- package/vendor/include/networkit/community/PartitionIntersection.hpp +0 -25
- package/vendor/include/networkit/community/QualityMeasure.hpp +0 -27
- package/vendor/include/networkit/community/SampledGraphStructuralRandMeasure.hpp +0 -40
- package/vendor/include/networkit/community/SampledNodeStructuralRandMeasure.hpp +0 -40
- package/vendor/include/networkit/community/StablePartitionNodes.hpp +0 -48
- package/vendor/include/networkit/components/BiconnectedComponents.hpp +0 -116
- package/vendor/include/networkit/components/ComponentDecomposition.hpp +0 -72
- package/vendor/include/networkit/components/ConnectedComponents.hpp +0 -55
- package/vendor/include/networkit/components/DynConnectedComponents.hpp +0 -71
- package/vendor/include/networkit/components/DynWeaklyConnectedComponents.hpp +0 -73
- package/vendor/include/networkit/components/ParallelConnectedComponents.hpp +0 -44
- package/vendor/include/networkit/components/RandomSpanningForest.hpp +0 -36
- package/vendor/include/networkit/components/StronglyConnectedComponents.hpp +0 -50
- package/vendor/include/networkit/components/WeaklyConnectedComponents.hpp +0 -59
- package/vendor/include/networkit/correlation/Assortativity.hpp +0 -64
- package/vendor/include/networkit/distance/APSP.hpp +0 -70
- package/vendor/include/networkit/distance/AStar.hpp +0 -68
- package/vendor/include/networkit/distance/AStarGeneral.hpp +0 -110
- package/vendor/include/networkit/distance/AdamicAdarDistance.hpp +0 -52
- package/vendor/include/networkit/distance/AffectedNodes.hpp +0 -130
- package/vendor/include/networkit/distance/AlgebraicDistance.hpp +0 -63
- package/vendor/include/networkit/distance/BFS.hpp +0 -43
- package/vendor/include/networkit/distance/BidirectionalBFS.hpp +0 -51
- package/vendor/include/networkit/distance/BidirectionalDijkstra.hpp +0 -69
- package/vendor/include/networkit/distance/CommuteTimeDistance.hpp +0 -89
- package/vendor/include/networkit/distance/Diameter.hpp +0 -97
- package/vendor/include/networkit/distance/Dijkstra.hpp +0 -50
- package/vendor/include/networkit/distance/DynAPSP.hpp +0 -67
- package/vendor/include/networkit/distance/DynBFS.hpp +0 -56
- package/vendor/include/networkit/distance/DynDijkstra.hpp +0 -57
- package/vendor/include/networkit/distance/DynPrunedLandmarkLabeling.hpp +0 -67
- package/vendor/include/networkit/distance/DynSSSP.hpp +0 -87
- package/vendor/include/networkit/distance/Eccentricity.hpp +0 -32
- package/vendor/include/networkit/distance/EffectiveDiameter.hpp +0 -47
- package/vendor/include/networkit/distance/EffectiveDiameterApproximation.hpp +0 -57
- package/vendor/include/networkit/distance/FloydWarshall.hpp +0 -93
- package/vendor/include/networkit/distance/GraphDistance.hpp +0 -49
- package/vendor/include/networkit/distance/HopPlotApproximation.hpp +0 -62
- package/vendor/include/networkit/distance/IncompleteDijkstra.hpp +0 -66
- package/vendor/include/networkit/distance/IncompleteSSSP.hpp +0 -41
- package/vendor/include/networkit/distance/JaccardDistance.hpp +0 -57
- package/vendor/include/networkit/distance/MultiTargetBFS.hpp +0 -32
- package/vendor/include/networkit/distance/MultiTargetDijkstra.hpp +0 -40
- package/vendor/include/networkit/distance/NeighborhoodFunction.hpp +0 -47
- package/vendor/include/networkit/distance/NeighborhoodFunctionApproximation.hpp +0 -56
- package/vendor/include/networkit/distance/NeighborhoodFunctionHeuristic.hpp +0 -56
- package/vendor/include/networkit/distance/NodeDistance.hpp +0 -54
- package/vendor/include/networkit/distance/PrunedLandmarkLabeling.hpp +0 -76
- package/vendor/include/networkit/distance/ReverseBFS.hpp +0 -46
- package/vendor/include/networkit/distance/SPSP.hpp +0 -143
- package/vendor/include/networkit/distance/SSSP.hpp +0 -216
- package/vendor/include/networkit/distance/STSP.hpp +0 -193
- package/vendor/include/networkit/distance/Volume.hpp +0 -66
- package/vendor/include/networkit/dynamics/DGSStreamParser.hpp +0 -40
- package/vendor/include/networkit/dynamics/DGSWriter.hpp +0 -30
- package/vendor/include/networkit/dynamics/GraphDifference.hpp +0 -110
- package/vendor/include/networkit/dynamics/GraphEvent.hpp +0 -55
- package/vendor/include/networkit/dynamics/GraphEventHandler.hpp +0 -39
- package/vendor/include/networkit/dynamics/GraphEventProxy.hpp +0 -55
- package/vendor/include/networkit/dynamics/GraphUpdater.hpp +0 -38
- package/vendor/include/networkit/edgescores/ChibaNishizekiQuadrangleEdgeScore.hpp +0 -26
- package/vendor/include/networkit/edgescores/ChibaNishizekiTriangleEdgeScore.hpp +0 -33
- package/vendor/include/networkit/edgescores/EdgeScore.hpp +0 -50
- package/vendor/include/networkit/edgescores/EdgeScoreAsWeight.hpp +0 -33
- package/vendor/include/networkit/edgescores/EdgeScoreBlender.hpp +0 -33
- package/vendor/include/networkit/edgescores/EdgeScoreLinearizer.hpp +0 -32
- package/vendor/include/networkit/edgescores/EdgeScoreNormalizer.hpp +0 -35
- package/vendor/include/networkit/edgescores/GeometricMeanScore.hpp +0 -29
- package/vendor/include/networkit/edgescores/PrefixJaccardScore.hpp +0 -23
- package/vendor/include/networkit/edgescores/TriangleEdgeScore.hpp +0 -39
- package/vendor/include/networkit/embedding/Node2Vec.hpp +0 -83
- package/vendor/include/networkit/flow/EdmondsKarp.hpp +0 -112
- package/vendor/include/networkit/generators/BarabasiAlbertGenerator.hpp +0 -87
- package/vendor/include/networkit/generators/ChungLuGenerator.hpp +0 -46
- package/vendor/include/networkit/generators/ChungLuGeneratorAlamEtAl.hpp +0 -63
- package/vendor/include/networkit/generators/ClusteredRandomGraphGenerator.hpp +0 -56
- package/vendor/include/networkit/generators/ConfigurationModel.hpp +0 -36
- package/vendor/include/networkit/generators/DorogovtsevMendesGenerator.hpp +0 -33
- package/vendor/include/networkit/generators/DynamicBarabasiAlbertGenerator.hpp +0 -33
- package/vendor/include/networkit/generators/DynamicDGSParser.hpp +0 -51
- package/vendor/include/networkit/generators/DynamicDorogovtsevMendesGenerator.hpp +0 -34
- package/vendor/include/networkit/generators/DynamicForestFireGenerator.hpp +0 -55
- package/vendor/include/networkit/generators/DynamicGraphGenerator.hpp +0 -40
- package/vendor/include/networkit/generators/DynamicGraphSource.hpp +0 -79
- package/vendor/include/networkit/generators/DynamicHyperbolicGenerator.hpp +0 -143
- package/vendor/include/networkit/generators/DynamicPathGenerator.hpp +0 -26
- package/vendor/include/networkit/generators/DynamicPubWebGenerator.hpp +0 -54
- package/vendor/include/networkit/generators/EdgeSwitchingMarkovChainGenerator.hpp +0 -65
- package/vendor/include/networkit/generators/ErdosRenyiEnumerator.hpp +0 -318
- package/vendor/include/networkit/generators/ErdosRenyiGenerator.hpp +0 -56
- package/vendor/include/networkit/generators/HavelHakimiGenerator.hpp +0 -48
- package/vendor/include/networkit/generators/HyperbolicGenerator.hpp +0 -236
- package/vendor/include/networkit/generators/LFRGenerator.hpp +0 -175
- package/vendor/include/networkit/generators/MocnikGenerator.hpp +0 -147
- package/vendor/include/networkit/generators/MocnikGeneratorBasic.hpp +0 -58
- package/vendor/include/networkit/generators/PowerlawDegreeSequence.hpp +0 -128
- package/vendor/include/networkit/generators/PubWebGenerator.hpp +0 -94
- package/vendor/include/networkit/generators/RegularRingLatticeGenerator.hpp +0 -37
- package/vendor/include/networkit/generators/RmatGenerator.hpp +0 -67
- package/vendor/include/networkit/generators/StaticDegreeSequenceGenerator.hpp +0 -42
- package/vendor/include/networkit/generators/StaticGraphGenerator.hpp +0 -30
- package/vendor/include/networkit/generators/StochasticBlockmodel.hpp +0 -41
- package/vendor/include/networkit/generators/WattsStrogatzGenerator.hpp +0 -43
- package/vendor/include/networkit/generators/quadtree/QuadNode.hpp +0 -857
- package/vendor/include/networkit/generators/quadtree/QuadNodeCartesianEuclid.hpp +0 -587
- package/vendor/include/networkit/generators/quadtree/QuadNodePolarEuclid.hpp +0 -726
- package/vendor/include/networkit/generators/quadtree/Quadtree.hpp +0 -232
- package/vendor/include/networkit/generators/quadtree/QuadtreeCartesianEuclid.hpp +0 -149
- package/vendor/include/networkit/generators/quadtree/QuadtreePolarEuclid.hpp +0 -143
- package/vendor/include/networkit/geometric/HyperbolicSpace.hpp +0 -248
- package/vendor/include/networkit/geometric/Point2DWithIndex.hpp +0 -145
- package/vendor/include/networkit/global/ClusteringCoefficient.hpp +0 -42
- package/vendor/include/networkit/global/GlobalClusteringCoefficient.hpp +0 -24
- package/vendor/include/networkit/graph/Attributes.hpp +0 -568
- package/vendor/include/networkit/graph/BFS.hpp +0 -111
- package/vendor/include/networkit/graph/DFS.hpp +0 -71
- package/vendor/include/networkit/graph/Dijkstra.hpp +0 -83
- package/vendor/include/networkit/graph/EdgeIterators.hpp +0 -171
- package/vendor/include/networkit/graph/Graph.hpp +0 -2083
- package/vendor/include/networkit/graph/GraphBuilder.hpp +0 -289
- package/vendor/include/networkit/graph/GraphR.hpp +0 -133
- package/vendor/include/networkit/graph/GraphTools.hpp +0 -589
- package/vendor/include/networkit/graph/GraphW.hpp +0 -1236
- package/vendor/include/networkit/graph/KruskalMSF.hpp +0 -50
- package/vendor/include/networkit/graph/NeighborIterators.hpp +0 -163
- package/vendor/include/networkit/graph/NodeIterators.hpp +0 -127
- package/vendor/include/networkit/graph/PrimMSF.hpp +0 -66
- package/vendor/include/networkit/graph/RandomMaximumSpanningForest.hpp +0 -133
- package/vendor/include/networkit/graph/SpanningForest.hpp +0 -41
- package/vendor/include/networkit/graph/TopologicalSort.hpp +0 -87
- package/vendor/include/networkit/graph/UnionMaximumSpanningForest.hpp +0 -126
- package/vendor/include/networkit/graph/test/GraphBuilderBenchmark.hpp +0 -68
- package/vendor/include/networkit/independentset/IndependentSetFinder.hpp +0 -44
- package/vendor/include/networkit/independentset/Luby.hpp +0 -27
- package/vendor/include/networkit/io/BinaryEdgeListPartitionReader.hpp +0 -45
- package/vendor/include/networkit/io/BinaryEdgeListPartitionWriter.hpp +0 -47
- package/vendor/include/networkit/io/BinaryPartitionReader.hpp +0 -41
- package/vendor/include/networkit/io/BinaryPartitionWriter.hpp +0 -44
- package/vendor/include/networkit/io/CoverReader.hpp +0 -27
- package/vendor/include/networkit/io/CoverWriter.hpp +0 -21
- package/vendor/include/networkit/io/DGSReader.hpp +0 -39
- package/vendor/include/networkit/io/DibapGraphReader.hpp +0 -43
- package/vendor/include/networkit/io/DotGraphWriter.hpp +0 -39
- package/vendor/include/networkit/io/DotPartitionWriter.hpp +0 -23
- package/vendor/include/networkit/io/DynamicGraphReader.hpp +0 -29
- package/vendor/include/networkit/io/EdgeListCoverReader.hpp +0 -35
- package/vendor/include/networkit/io/EdgeListPartitionReader.hpp +0 -43
- package/vendor/include/networkit/io/EdgeListReader.hpp +0 -61
- package/vendor/include/networkit/io/EdgeListWriter.hpp +0 -48
- package/vendor/include/networkit/io/GMLGraphReader.hpp +0 -33
- package/vendor/include/networkit/io/GMLGraphWriter.hpp +0 -33
- package/vendor/include/networkit/io/GraphIO.hpp +0 -52
- package/vendor/include/networkit/io/GraphReader.hpp +0 -40
- package/vendor/include/networkit/io/GraphToolBinaryReader.hpp +0 -71
- package/vendor/include/networkit/io/GraphToolBinaryWriter.hpp +0 -61
- package/vendor/include/networkit/io/GraphWriter.hpp +0 -27
- package/vendor/include/networkit/io/KONECTGraphReader.hpp +0 -44
- package/vendor/include/networkit/io/LineFileReader.hpp +0 -42
- package/vendor/include/networkit/io/METISGraphReader.hpp +0 -36
- package/vendor/include/networkit/io/METISGraphWriter.hpp +0 -29
- package/vendor/include/networkit/io/METISParser.hpp +0 -63
- package/vendor/include/networkit/io/MTXGraphReader.hpp +0 -31
- package/vendor/include/networkit/io/MTXParser.hpp +0 -87
- package/vendor/include/networkit/io/MatrixMarketReader.hpp +0 -33
- package/vendor/include/networkit/io/MatrixReader.hpp +0 -33
- package/vendor/include/networkit/io/MemoryMappedFile.hpp +0 -80
- package/vendor/include/networkit/io/NetworkitBinaryGraph.hpp +0 -144
- package/vendor/include/networkit/io/NetworkitBinaryReader.hpp +0 -50
- package/vendor/include/networkit/io/NetworkitBinaryWriter.hpp +0 -71
- package/vendor/include/networkit/io/PartitionReader.hpp +0 -34
- package/vendor/include/networkit/io/PartitionWriter.hpp +0 -31
- package/vendor/include/networkit/io/RBGraphReader.hpp +0 -37
- package/vendor/include/networkit/io/RBMatrixReader.hpp +0 -49
- package/vendor/include/networkit/io/RasterReader.hpp +0 -40
- package/vendor/include/networkit/io/SNAPEdgeListPartitionReader.hpp +0 -28
- package/vendor/include/networkit/io/SNAPGraphReader.hpp +0 -53
- package/vendor/include/networkit/io/SNAPGraphWriter.hpp +0 -53
- package/vendor/include/networkit/io/ThrillGraphBinaryReader.hpp +0 -44
- package/vendor/include/networkit/io/ThrillGraphBinaryWriter.hpp +0 -27
- package/vendor/include/networkit/layout/LayoutAlgorithm.hpp +0 -39
- package/vendor/include/networkit/linkprediction/AdamicAdarIndex.hpp +0 -37
- package/vendor/include/networkit/linkprediction/AdjustedRandIndex.hpp +0 -36
- package/vendor/include/networkit/linkprediction/AlgebraicDistanceIndex.hpp +0 -70
- package/vendor/include/networkit/linkprediction/CommonNeighborsIndex.hpp +0 -39
- package/vendor/include/networkit/linkprediction/EvaluationMetric.hpp +0 -135
- package/vendor/include/networkit/linkprediction/JaccardIndex.hpp +0 -44
- package/vendor/include/networkit/linkprediction/KatzIndex.hpp +0 -84
- package/vendor/include/networkit/linkprediction/LinkPredictor.hpp +0 -98
- package/vendor/include/networkit/linkprediction/LinkThresholder.hpp +0 -56
- package/vendor/include/networkit/linkprediction/MissingLinksFinder.hpp +0 -60
- package/vendor/include/networkit/linkprediction/NeighborhoodDistanceIndex.hpp +0 -42
- package/vendor/include/networkit/linkprediction/NeighborhoodUtility.hpp +0 -54
- package/vendor/include/networkit/linkprediction/NeighborsMeasureIndex.hpp +0 -48
- package/vendor/include/networkit/linkprediction/PrecisionRecallMetric.hpp +0 -40
- package/vendor/include/networkit/linkprediction/PredictionsSorter.hpp +0 -66
- package/vendor/include/networkit/linkprediction/PreferentialAttachmentIndex.hpp +0 -37
- package/vendor/include/networkit/linkprediction/ROCMetric.hpp +0 -39
- package/vendor/include/networkit/linkprediction/RandomLinkSampler.hpp +0 -47
- package/vendor/include/networkit/linkprediction/ResourceAllocationIndex.hpp +0 -38
- package/vendor/include/networkit/linkprediction/SameCommunityIndex.hpp +0 -50
- package/vendor/include/networkit/linkprediction/TotalNeighborsIndex.hpp +0 -39
- package/vendor/include/networkit/linkprediction/UDegreeIndex.hpp +0 -35
- package/vendor/include/networkit/linkprediction/VDegreeIndex.hpp +0 -35
- package/vendor/include/networkit/matching/BMatcher.hpp +0 -52
- package/vendor/include/networkit/matching/BMatching.hpp +0 -115
- package/vendor/include/networkit/matching/BSuitorMatcher.hpp +0 -170
- package/vendor/include/networkit/matching/DynamicBSuitorMatcher.hpp +0 -78
- package/vendor/include/networkit/matching/LocalMaxMatcher.hpp +0 -35
- package/vendor/include/networkit/matching/Matcher.hpp +0 -55
- package/vendor/include/networkit/matching/Matching.hpp +0 -111
- package/vendor/include/networkit/matching/PathGrowingMatcher.hpp +0 -46
- package/vendor/include/networkit/matching/SuitorMatcher.hpp +0 -62
- package/vendor/include/networkit/numerics/ConjugateGradient.hpp +0 -163
- package/vendor/include/networkit/numerics/GaussSeidelRelaxation.hpp +0 -99
- package/vendor/include/networkit/numerics/LAMG/LAMGSettings.hpp +0 -70
- package/vendor/include/networkit/numerics/LAMG/Lamg.hpp +0 -460
- package/vendor/include/networkit/numerics/LAMG/Level/EliminationStage.hpp +0 -47
- package/vendor/include/networkit/numerics/LAMG/Level/Level.hpp +0 -56
- package/vendor/include/networkit/numerics/LAMG/Level/LevelAggregation.hpp +0 -52
- package/vendor/include/networkit/numerics/LAMG/Level/LevelElimination.hpp +0 -133
- package/vendor/include/networkit/numerics/LAMG/Level/LevelFinest.hpp +0 -28
- package/vendor/include/networkit/numerics/LAMG/LevelHierarchy.hpp +0 -165
- package/vendor/include/networkit/numerics/LAMG/MultiLevelSetup.hpp +0 -1090
- package/vendor/include/networkit/numerics/LAMG/SolverLamg.hpp +0 -316
- package/vendor/include/networkit/numerics/LinearSolver.hpp +0 -151
- package/vendor/include/networkit/numerics/Preconditioner/DiagonalPreconditioner.hpp +0 -61
- package/vendor/include/networkit/numerics/Preconditioner/IdentityPreconditioner.hpp +0 -36
- package/vendor/include/networkit/numerics/Smoother.hpp +0 -37
- package/vendor/include/networkit/overlap/HashingOverlapper.hpp +0 -28
- package/vendor/include/networkit/overlap/Overlapper.hpp +0 -27
- package/vendor/include/networkit/planarity/LeftRightPlanarityCheck.hpp +0 -113
- package/vendor/include/networkit/randomization/Curveball.hpp +0 -49
- package/vendor/include/networkit/randomization/CurveballGlobalTradeGenerator.hpp +0 -39
- package/vendor/include/networkit/randomization/CurveballUniformTradeGenerator.hpp +0 -39
- package/vendor/include/networkit/randomization/DegreePreservingShuffle.hpp +0 -82
- package/vendor/include/networkit/randomization/EdgeSwitching.hpp +0 -157
- package/vendor/include/networkit/randomization/GlobalCurveball.hpp +0 -69
- package/vendor/include/networkit/randomization/GlobalTradeSequence.hpp +0 -303
- package/vendor/include/networkit/reachability/AllSimplePaths.hpp +0 -122
- package/vendor/include/networkit/reachability/ReachableNodes.hpp +0 -83
- package/vendor/include/networkit/scd/ApproximatePageRank.hpp +0 -51
- package/vendor/include/networkit/scd/CliqueDetect.hpp +0 -55
- package/vendor/include/networkit/scd/CombinedSCD.hpp +0 -51
- package/vendor/include/networkit/scd/GCE.hpp +0 -42
- package/vendor/include/networkit/scd/LFMLocal.hpp +0 -54
- package/vendor/include/networkit/scd/LocalT.hpp +0 -40
- package/vendor/include/networkit/scd/LocalTightnessExpansion.hpp +0 -46
- package/vendor/include/networkit/scd/PageRankNibble.hpp +0 -55
- package/vendor/include/networkit/scd/RandomBFS.hpp +0 -33
- package/vendor/include/networkit/scd/SCDGroundTruthComparison.hpp +0 -121
- package/vendor/include/networkit/scd/SelectiveCommunityDetector.hpp +0 -76
- package/vendor/include/networkit/scd/SetConductance.hpp +0 -47
- package/vendor/include/networkit/scd/TCE.hpp +0 -41
- package/vendor/include/networkit/scd/TwoPhaseL.hpp +0 -40
- package/vendor/include/networkit/scoring/EdgeScoring.hpp +0 -44
- package/vendor/include/networkit/scoring/ModularityScoring.hpp +0 -79
- package/vendor/include/networkit/simulation/EpidemicSimulationSEIR.hpp +0 -59
- package/vendor/include/networkit/sparsification/ChanceCorrectedTriangleScore.hpp +0 -28
- package/vendor/include/networkit/sparsification/ForestFireScore.hpp +0 -34
- package/vendor/include/networkit/sparsification/GlobalThresholdFilter.hpp +0 -40
- package/vendor/include/networkit/sparsification/LocalDegreeScore.hpp +0 -30
- package/vendor/include/networkit/sparsification/LocalFilterScore.hpp +0 -124
- package/vendor/include/networkit/sparsification/LocalSimilarityScore.hpp +0 -63
- package/vendor/include/networkit/sparsification/MultiscaleScore.hpp +0 -38
- package/vendor/include/networkit/sparsification/RandomEdgeScore.hpp +0 -33
- package/vendor/include/networkit/sparsification/RandomNodeEdgeScore.hpp +0 -29
- package/vendor/include/networkit/sparsification/SCANStructuralSimilarityScore.hpp +0 -23
- package/vendor/include/networkit/sparsification/SimmelianOverlapScore.hpp +0 -35
- package/vendor/include/networkit/sparsification/SimmelianScore.hpp +0 -92
- package/vendor/include/networkit/sparsification/Sparsifiers.hpp +0 -166
- package/vendor/include/networkit/structures/Cover.hpp +0 -248
- package/vendor/include/networkit/structures/LocalCommunity.hpp +0 -363
- package/vendor/include/networkit/structures/Partition.hpp +0 -335
- package/vendor/include/networkit/structures/UnionFind.hpp +0 -66
- package/vendor/include/networkit/viz/GraphLayoutAlgorithm.hpp +0 -157
- package/vendor/include/networkit/viz/MaxentStress.hpp +0 -346
- package/vendor/include/networkit/viz/Octree.hpp +0 -428
- package/vendor/include/networkit/viz/PivotMDS.hpp +0 -63
- package/vendor/include/networkit/viz/Point.hpp +0 -415
- package/vendor/include/networkit/viz/PostscriptWriter.hpp +0 -78
- package/vendor/include/tlx/algorithm/exclusive_scan.hpp +0 -56
- package/vendor/include/tlx/algorithm/is_sorted_cmp.hpp +0 -56
- package/vendor/include/tlx/algorithm/merge_advance.hpp +0 -177
- package/vendor/include/tlx/algorithm/merge_combine.hpp +0 -76
- package/vendor/include/tlx/algorithm/multisequence_partition.hpp +0 -346
- package/vendor/include/tlx/algorithm/multisequence_selection.hpp +0 -351
- package/vendor/include/tlx/algorithm/multiway_merge.hpp +0 -1385
- package/vendor/include/tlx/algorithm/multiway_merge_splitting.hpp +0 -257
- package/vendor/include/tlx/algorithm/parallel_multiway_merge.hpp +0 -408
- package/vendor/include/tlx/algorithm/random_bipartition_shuffle.hpp +0 -116
- package/vendor/include/tlx/algorithm.hpp +0 -36
- package/vendor/include/tlx/allocator_base.hpp +0 -100
- package/vendor/include/tlx/backtrace.hpp +0 -54
- package/vendor/include/tlx/cmdline_parser.hpp +0 -498
- package/vendor/include/tlx/container/btree.hpp +0 -3977
- package/vendor/include/tlx/container/btree_map.hpp +0 -634
- package/vendor/include/tlx/container/btree_multimap.hpp +0 -627
- package/vendor/include/tlx/container/btree_multiset.hpp +0 -612
- package/vendor/include/tlx/container/btree_set.hpp +0 -612
- package/vendor/include/tlx/container/d_ary_addressable_int_heap.hpp +0 -416
- package/vendor/include/tlx/container/d_ary_heap.hpp +0 -311
- package/vendor/include/tlx/container/loser_tree.hpp +0 -1009
- package/vendor/include/tlx/container/lru_cache.hpp +0 -319
- package/vendor/include/tlx/container/radix_heap.hpp +0 -735
- package/vendor/include/tlx/container/ring_buffer.hpp +0 -428
- package/vendor/include/tlx/container/simple_vector.hpp +0 -304
- package/vendor/include/tlx/container/splay_tree.hpp +0 -399
- package/vendor/include/tlx/container/string_view.hpp +0 -805
- package/vendor/include/tlx/container.hpp +0 -40
- package/vendor/include/tlx/counting_ptr.hpp +0 -522
- package/vendor/include/tlx/define/attribute_always_inline.hpp +0 -34
- package/vendor/include/tlx/define/attribute_fallthrough.hpp +0 -36
- package/vendor/include/tlx/define/attribute_format_printf.hpp +0 -34
- package/vendor/include/tlx/define/attribute_packed.hpp +0 -34
- package/vendor/include/tlx/define/attribute_warn_unused_result.hpp +0 -34
- package/vendor/include/tlx/define/constexpr.hpp +0 -31
- package/vendor/include/tlx/define/deprecated.hpp +0 -39
- package/vendor/include/tlx/define/endian.hpp +0 -49
- package/vendor/include/tlx/define/likely.hpp +0 -33
- package/vendor/include/tlx/define/visibility_hidden.hpp +0 -34
- package/vendor/include/tlx/define.hpp +0 -36
- package/vendor/include/tlx/delegate.hpp +0 -524
- package/vendor/include/tlx/die/core.hpp +0 -311
- package/vendor/include/tlx/die.hpp +0 -106
- package/vendor/include/tlx/digest/md5.hpp +0 -81
- package/vendor/include/tlx/digest/sha1.hpp +0 -81
- package/vendor/include/tlx/digest/sha256.hpp +0 -81
- package/vendor/include/tlx/digest/sha512.hpp +0 -81
- package/vendor/include/tlx/digest.hpp +0 -30
- package/vendor/include/tlx/logger/all.hpp +0 -33
- package/vendor/include/tlx/logger/array.hpp +0 -43
- package/vendor/include/tlx/logger/core.hpp +0 -287
- package/vendor/include/tlx/logger/deque.hpp +0 -42
- package/vendor/include/tlx/logger/map.hpp +0 -65
- package/vendor/include/tlx/logger/set.hpp +0 -60
- package/vendor/include/tlx/logger/tuple.hpp +0 -66
- package/vendor/include/tlx/logger/unordered_map.hpp +0 -68
- package/vendor/include/tlx/logger/unordered_set.hpp +0 -64
- package/vendor/include/tlx/logger/wrap_unprintable.hpp +0 -75
- package/vendor/include/tlx/logger.hpp +0 -44
- package/vendor/include/tlx/math/abs_diff.hpp +0 -35
- package/vendor/include/tlx/math/aggregate.hpp +0 -231
- package/vendor/include/tlx/math/aggregate_min_max.hpp +0 -116
- package/vendor/include/tlx/math/bswap.hpp +0 -148
- package/vendor/include/tlx/math/bswap_be.hpp +0 -79
- package/vendor/include/tlx/math/bswap_le.hpp +0 -79
- package/vendor/include/tlx/math/clz.hpp +0 -174
- package/vendor/include/tlx/math/ctz.hpp +0 -174
- package/vendor/include/tlx/math/div_ceil.hpp +0 -36
- package/vendor/include/tlx/math/ffs.hpp +0 -123
- package/vendor/include/tlx/math/integer_log2.hpp +0 -189
- package/vendor/include/tlx/math/is_power_of_two.hpp +0 -74
- package/vendor/include/tlx/math/polynomial_regression.hpp +0 -243
- package/vendor/include/tlx/math/popcount.hpp +0 -173
- package/vendor/include/tlx/math/power_to_the.hpp +0 -44
- package/vendor/include/tlx/math/rol.hpp +0 -112
- package/vendor/include/tlx/math/ror.hpp +0 -112
- package/vendor/include/tlx/math/round_to_power_of_two.hpp +0 -121
- package/vendor/include/tlx/math/round_up.hpp +0 -36
- package/vendor/include/tlx/math/sgn.hpp +0 -38
- package/vendor/include/tlx/math.hpp +0 -46
- package/vendor/include/tlx/meta/apply_tuple.hpp +0 -55
- package/vendor/include/tlx/meta/call_for_range.hpp +0 -78
- package/vendor/include/tlx/meta/call_foreach.hpp +0 -60
- package/vendor/include/tlx/meta/call_foreach_tuple.hpp +0 -60
- package/vendor/include/tlx/meta/call_foreach_tuple_with_index.hpp +0 -61
- package/vendor/include/tlx/meta/call_foreach_with_index.hpp +0 -64
- package/vendor/include/tlx/meta/enable_if.hpp +0 -37
- package/vendor/include/tlx/meta/fold_left.hpp +0 -63
- package/vendor/include/tlx/meta/fold_left_tuple.hpp +0 -60
- package/vendor/include/tlx/meta/fold_right.hpp +0 -63
- package/vendor/include/tlx/meta/fold_right_tuple.hpp +0 -60
- package/vendor/include/tlx/meta/function_chain.hpp +0 -197
- package/vendor/include/tlx/meta/function_stack.hpp +0 -189
- package/vendor/include/tlx/meta/has_member.hpp +0 -80
- package/vendor/include/tlx/meta/has_method.hpp +0 -117
- package/vendor/include/tlx/meta/index_sequence.hpp +0 -66
- package/vendor/include/tlx/meta/is_std_array.hpp +0 -40
- package/vendor/include/tlx/meta/is_std_pair.hpp +0 -39
- package/vendor/include/tlx/meta/is_std_tuple.hpp +0 -39
- package/vendor/include/tlx/meta/is_std_vector.hpp +0 -39
- package/vendor/include/tlx/meta/log2.hpp +0 -101
- package/vendor/include/tlx/meta/no_operation.hpp +0 -55
- package/vendor/include/tlx/meta/static_index.hpp +0 -42
- package/vendor/include/tlx/meta/vexpand.hpp +0 -34
- package/vendor/include/tlx/meta/vmap_for_range.hpp +0 -84
- package/vendor/include/tlx/meta/vmap_foreach.hpp +0 -63
- package/vendor/include/tlx/meta/vmap_foreach_tuple.hpp +0 -59
- package/vendor/include/tlx/meta/vmap_foreach_tuple_with_index.hpp +0 -62
- package/vendor/include/tlx/meta/vmap_foreach_with_index.hpp +0 -70
- package/vendor/include/tlx/meta.hpp +0 -55
- package/vendor/include/tlx/multi_timer.hpp +0 -148
- package/vendor/include/tlx/port/setenv.hpp +0 -31
- package/vendor/include/tlx/port.hpp +0 -27
- package/vendor/include/tlx/semaphore.hpp +0 -119
- package/vendor/include/tlx/simple_vector.hpp +0 -20
- package/vendor/include/tlx/siphash.hpp +0 -282
- package/vendor/include/tlx/sort/networks/best.hpp +0 -611
- package/vendor/include/tlx/sort/networks/bose_nelson.hpp +0 -412
- package/vendor/include/tlx/sort/networks/bose_nelson_parameter.hpp +0 -507
- package/vendor/include/tlx/sort/networks/cswap.hpp +0 -60
- package/vendor/include/tlx/sort/parallel_mergesort.hpp +0 -398
- package/vendor/include/tlx/sort/strings/insertion_sort.hpp +0 -232
- package/vendor/include/tlx/sort/strings/multikey_quicksort.hpp +0 -185
- package/vendor/include/tlx/sort/strings/parallel_sample_sort.hpp +0 -1647
- package/vendor/include/tlx/sort/strings/radix_sort.hpp +0 -934
- package/vendor/include/tlx/sort/strings/sample_sort_tools.hpp +0 -756
- package/vendor/include/tlx/sort/strings/string_ptr.hpp +0 -426
- package/vendor/include/tlx/sort/strings/string_set.hpp +0 -800
- package/vendor/include/tlx/sort/strings.hpp +0 -329
- package/vendor/include/tlx/sort/strings_parallel.hpp +0 -325
- package/vendor/include/tlx/sort.hpp +0 -29
- package/vendor/include/tlx/stack_allocator.hpp +0 -226
- package/vendor/include/tlx/string/appendline.hpp +0 -35
- package/vendor/include/tlx/string/base64.hpp +0 -87
- package/vendor/include/tlx/string/bitdump.hpp +0 -139
- package/vendor/include/tlx/string/compare_icase.hpp +0 -42
- package/vendor/include/tlx/string/contains.hpp +0 -36
- package/vendor/include/tlx/string/contains_word.hpp +0 -42
- package/vendor/include/tlx/string/ends_with.hpp +0 -79
- package/vendor/include/tlx/string/equal_icase.hpp +0 -42
- package/vendor/include/tlx/string/erase_all.hpp +0 -70
- package/vendor/include/tlx/string/escape_html.hpp +0 -34
- package/vendor/include/tlx/string/escape_uri.hpp +0 -34
- package/vendor/include/tlx/string/expand_environment_variables.hpp +0 -49
- package/vendor/include/tlx/string/extract_between.hpp +0 -40
- package/vendor/include/tlx/string/format_iec_units.hpp +0 -32
- package/vendor/include/tlx/string/format_si_iec_units.hpp +0 -19
- package/vendor/include/tlx/string/format_si_units.hpp +0 -32
- package/vendor/include/tlx/string/hash_djb2.hpp +0 -87
- package/vendor/include/tlx/string/hash_sdbm.hpp +0 -86
- package/vendor/include/tlx/string/hexdump.hpp +0 -154
- package/vendor/include/tlx/string/index_of.hpp +0 -56
- package/vendor/include/tlx/string/join.hpp +0 -65
- package/vendor/include/tlx/string/join_generic.hpp +0 -89
- package/vendor/include/tlx/string/join_quoted.hpp +0 -46
- package/vendor/include/tlx/string/less_icase.hpp +0 -64
- package/vendor/include/tlx/string/levenshtein.hpp +0 -193
- package/vendor/include/tlx/string/pad.hpp +0 -39
- package/vendor/include/tlx/string/parse_si_iec_units.hpp +0 -46
- package/vendor/include/tlx/string/parse_uri.hpp +0 -66
- package/vendor/include/tlx/string/parse_uri_form_data.hpp +0 -136
- package/vendor/include/tlx/string/replace.hpp +0 -141
- package/vendor/include/tlx/string/split.hpp +0 -170
- package/vendor/include/tlx/string/split_quoted.hpp +0 -49
- package/vendor/include/tlx/string/split_view.hpp +0 -218
- package/vendor/include/tlx/string/split_words.hpp +0 -53
- package/vendor/include/tlx/string/ssprintf.hpp +0 -45
- package/vendor/include/tlx/string/ssprintf_generic.hpp +0 -95
- package/vendor/include/tlx/string/starts_with.hpp +0 -44
- package/vendor/include/tlx/string/to_lower.hpp +0 -47
- package/vendor/include/tlx/string/to_upper.hpp +0 -47
- package/vendor/include/tlx/string/trim.hpp +0 -298
- package/vendor/include/tlx/string/union_words.hpp +0 -33
- package/vendor/include/tlx/string/word_wrap.hpp +0 -35
- package/vendor/include/tlx/string.hpp +0 -68
- package/vendor/include/tlx/thread_barrier_mutex.hpp +0 -109
- package/vendor/include/tlx/thread_barrier_spin.hpp +0 -127
- package/vendor/include/tlx/thread_pool.hpp +0 -151
- package/vendor/include/tlx/timestamp.hpp +0 -23
- package/vendor/include/tlx/unused.hpp +0 -28
- package/vendor/include/tlx/vector_free.hpp +0 -30
- package/vendor/include/tlx/version.hpp +0 -49
- package/vendor/include/ttmath/ttmath.h +0 -2881
- package/vendor/include/ttmath/ttmathbig.h +0 -6111
- package/vendor/include/ttmath/ttmathdec.h +0 -419
- package/vendor/include/ttmath/ttmathint.h +0 -1923
- package/vendor/include/ttmath/ttmathmisc.h +0 -250
- package/vendor/include/ttmath/ttmathobjects.h +0 -812
- package/vendor/include/ttmath/ttmathparser.h +0 -2791
- package/vendor/include/ttmath/ttmaththreads.h +0 -252
- package/vendor/include/ttmath/ttmathtypes.h +0 -707
- package/vendor/include/ttmath/ttmathuint.h +0 -4190
- package/vendor/include/ttmath/ttmathuint_noasm.h +0 -1038
- package/vendor/include/ttmath/ttmathuint_x86.h +0 -1620
- package/vendor/include/ttmath/ttmathuint_x86_64.h +0 -1177
- package/vendor/lib/cmake/tlx/tlx-config.cmake +0 -51
- package/vendor/lib/cmake/tlx/tlx-targets-release.cmake +0 -19
- package/vendor/lib/cmake/tlx/tlx-targets.cmake +0 -106
- package/vendor/lib/cmake/tlx/tlx-version.cmake +0 -11
- package/vendor/lib/libtlx.a +0 -0
- package/vendor/lib/pkgconfig/networkit.pc +0 -11
- package/vendor/lib/pkgconfig/tlx.pc +0 -11
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
/* LeftRightPlanarityCheck.hpp
|
|
2
|
-
*
|
|
3
|
-
* Created on: 03.01.2025
|
|
4
|
-
* Authors: Andreas Scharf (andreas.b.scharf@gmail.com)
|
|
5
|
-
*
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_PLANARITY_LEFT_RIGHT_PLANARITY_CHECK_HPP_
|
|
9
|
-
#define NETWORKIT_PLANARITY_LEFT_RIGHT_PLANARITY_CHECK_HPP_
|
|
10
|
-
#include <networkit/base/Algorithm.hpp>
|
|
11
|
-
#include <networkit/graph/Graph.hpp>
|
|
12
|
-
#include <networkit/graph/GraphW.hpp>
|
|
13
|
-
|
|
14
|
-
namespace NetworKit {
|
|
15
|
-
|
|
16
|
-
class LeftRightPlanarityCheck final : public Algorithm {
|
|
17
|
-
|
|
18
|
-
public:
|
|
19
|
-
/**
|
|
20
|
-
* Implements the left-right planarity test as described in
|
|
21
|
-
* [citation](https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&doi=7963e9feffe1c9362eb1a69010a5139d1da3661e).
|
|
22
|
-
* This algorithm determines whether a graph is planar, i.e., whether it can be drawn on a plane
|
|
23
|
-
* without any edges crossing. For an overview of planar graphs, refer to:
|
|
24
|
-
* https://en.wikipedia.org/wiki/Planar_graph
|
|
25
|
-
*
|
|
26
|
-
* The algorithm achieves (almost) linear runtime complexity. The only non-linear component
|
|
27
|
-
* arises from sorting the nodes of the depth-first search tree.
|
|
28
|
-
*
|
|
29
|
-
* @param G The input graph to test for planarity. The graph should be undirected.
|
|
30
|
-
* @throws std::runtime_error if graph is not an undirected graph
|
|
31
|
-
*/
|
|
32
|
-
LeftRightPlanarityCheck(const Graph &G) : graph(&G) {
|
|
33
|
-
if (G.isDirected()) {
|
|
34
|
-
throw std::runtime_error("The graph is not an undirected graph.");
|
|
35
|
-
}
|
|
36
|
-
dfsGraph = GraphW(graph->numberOfNodes(), false, true, false);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* Executes the left-right planarity test on the input graph.
|
|
41
|
-
* This method performs all necessary computations to determine
|
|
42
|
-
* whether the graph is planar and prepares the result for retrieval
|
|
43
|
-
* via the `isPlanar()` method.
|
|
44
|
-
*/
|
|
45
|
-
void run() override;
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* Returns whether the input graph is planar.
|
|
49
|
-
* The result is only valid after the `run()` method has been called.
|
|
50
|
-
*
|
|
51
|
-
* @return True if the graph is planar, false otherwise.
|
|
52
|
-
* @throws std::runtime_error if called before `run()` has been executed.
|
|
53
|
-
*/
|
|
54
|
-
bool isPlanar() const {
|
|
55
|
-
assureFinished();
|
|
56
|
-
return isGraphPlanar;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
private:
|
|
60
|
-
static const Edge noneEdge;
|
|
61
|
-
static constexpr count noneHeight{std::numeric_limits<count>::max()};
|
|
62
|
-
|
|
63
|
-
struct Interval {
|
|
64
|
-
Edge low{noneEdge};
|
|
65
|
-
Edge high{noneEdge};
|
|
66
|
-
|
|
67
|
-
Interval() : low{noneEdge}, high{noneEdge} {};
|
|
68
|
-
Interval(const Edge &low, const Edge &high) : low(low), high(high) {}
|
|
69
|
-
bool isEmpty() const { return low == noneEdge && high == noneEdge; }
|
|
70
|
-
|
|
71
|
-
friend bool operator==(const Interval &lhs, const Interval &rhs) {
|
|
72
|
-
return lhs.low == rhs.low && lhs.high == rhs.high;
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
struct ConflictPair {
|
|
77
|
-
Interval left{};
|
|
78
|
-
Interval right{};
|
|
79
|
-
|
|
80
|
-
ConflictPair() = default;
|
|
81
|
-
ConflictPair(const Interval &left, const Interval &right) : left(left), right(right) {}
|
|
82
|
-
|
|
83
|
-
void swap() { std::swap(left, right); }
|
|
84
|
-
|
|
85
|
-
friend bool operator==(const ConflictPair &lhs, const ConflictPair &rhs) {
|
|
86
|
-
return lhs.left == rhs.left && lhs.right == rhs.right;
|
|
87
|
-
}
|
|
88
|
-
};
|
|
89
|
-
const ConflictPair NoneConflictPair{Interval(), Interval()};
|
|
90
|
-
|
|
91
|
-
const Graph *graph;
|
|
92
|
-
bool isGraphPlanar{};
|
|
93
|
-
void dfsOrientation(node startNode);
|
|
94
|
-
bool dfsTesting(node startNode);
|
|
95
|
-
bool applyConstraints(const Edge &edge, const Edge &parentEdge);
|
|
96
|
-
void removeBackEdges(const Edge &edge);
|
|
97
|
-
void sortAdjacencyListByNestingDepth();
|
|
98
|
-
bool conflicting(const Interval &interval, const Edge &edge);
|
|
99
|
-
count getLowestLowPoint(const ConflictPair &conflictPair);
|
|
100
|
-
std::vector<count> heights;
|
|
101
|
-
std::unordered_map<Edge, count> lowestPoint;
|
|
102
|
-
std::unordered_map<Edge, count> secondLowestPoint;
|
|
103
|
-
std::unordered_map<Edge, Edge> ref;
|
|
104
|
-
std::vector<node> roots;
|
|
105
|
-
std::unordered_map<Edge, Edge> lowestPointEdge;
|
|
106
|
-
std::unordered_map<Edge, count> nestingDepth;
|
|
107
|
-
std::unordered_map<index, Edge> parentEdges;
|
|
108
|
-
std::stack<ConflictPair> stack;
|
|
109
|
-
std::unordered_map<Edge, ConflictPair> stackBottom;
|
|
110
|
-
GraphW dfsGraph;
|
|
111
|
-
};
|
|
112
|
-
} // namespace NetworKit
|
|
113
|
-
#endif // NETWORKIT_PLANARITY_LEFT_RIGHT_PLANARITY_CHECK_HPP_
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Curveball.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: 26.05.2018
|
|
5
|
-
* Author: Hung Tran <htran@ae.cs.uni-frankfurt.de>, Manuel Penschuck <networkit@manuel.jetzt>
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_RANDOMIZATION_CURVEBALL_HPP_
|
|
9
|
-
#define NETWORKIT_RANDOMIZATION_CURVEBALL_HPP_
|
|
10
|
-
|
|
11
|
-
#include <memory>
|
|
12
|
-
#include <utility>
|
|
13
|
-
|
|
14
|
-
#include <networkit/Globals.hpp>
|
|
15
|
-
#include <networkit/base/Algorithm.hpp>
|
|
16
|
-
#include <networkit/graph/Graph.hpp>
|
|
17
|
-
#include <networkit/graph/GraphW.hpp>
|
|
18
|
-
|
|
19
|
-
namespace NetworKit {
|
|
20
|
-
|
|
21
|
-
// pImpl
|
|
22
|
-
namespace CurveballDetails {
|
|
23
|
-
class CurveballIM;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
class Curveball final : public Algorithm {
|
|
27
|
-
public:
|
|
28
|
-
explicit Curveball(const Graph &G);
|
|
29
|
-
|
|
30
|
-
~Curveball() override;
|
|
31
|
-
|
|
32
|
-
void run() final {
|
|
33
|
-
throw std::runtime_error("run() is not supported by this algorithm; use run(trades)");
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
/* The algorithm is not parallel. */
|
|
37
|
-
void run(const std::vector<std::pair<node, node>> &trades);
|
|
38
|
-
|
|
39
|
-
GraphW getGraph(bool parallel = false);
|
|
40
|
-
|
|
41
|
-
count getNumberOfAffectedEdges() const;
|
|
42
|
-
|
|
43
|
-
private:
|
|
44
|
-
std::unique_ptr<CurveballDetails::CurveballIM> impl;
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
} // namespace NetworKit
|
|
48
|
-
|
|
49
|
-
#endif // NETWORKIT_RANDOMIZATION_CURVEBALL_HPP_
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* CurveballGlobalTradeGenerator.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: Jul 11, 2017
|
|
5
|
-
* Author: Hung Tran <htran@ae.cs.uni-frankfurt.de>
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_RANDOMIZATION_CURVEBALL_GLOBAL_TRADE_GENERATOR_HPP_
|
|
9
|
-
#define NETWORKIT_RANDOMIZATION_CURVEBALL_GLOBAL_TRADE_GENERATOR_HPP_
|
|
10
|
-
|
|
11
|
-
#include <stdexcept>
|
|
12
|
-
#include <utility>
|
|
13
|
-
#include <vector>
|
|
14
|
-
|
|
15
|
-
#include <networkit/Globals.hpp>
|
|
16
|
-
|
|
17
|
-
namespace NetworKit {
|
|
18
|
-
|
|
19
|
-
class CurveballGlobalTradeGenerator final {
|
|
20
|
-
public:
|
|
21
|
-
using value_type = std::vector<std::pair<node, node>>;
|
|
22
|
-
|
|
23
|
-
private:
|
|
24
|
-
const node numNodes;
|
|
25
|
-
const count numGlobalTrades;
|
|
26
|
-
|
|
27
|
-
public:
|
|
28
|
-
CurveballGlobalTradeGenerator(count run_length, node num_nodes)
|
|
29
|
-
: numNodes(num_nodes), numGlobalTrades(run_length) {
|
|
30
|
-
if (num_nodes <= 1)
|
|
31
|
-
throw std::runtime_error("At least two nodes are required.");
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
value_type generate() const;
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
} // namespace NetworKit
|
|
38
|
-
|
|
39
|
-
#endif // NETWORKIT_RANDOMIZATION_CURVEBALL_GLOBAL_TRADE_GENERATOR_HPP_
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* CurveballUniformTradeGenerator.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: Jul 11, 2017
|
|
5
|
-
* Author: Hung Tran <htran@ae.cs.uni-frankfurt.de>
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_RANDOMIZATION_CURVEBALL_UNIFORM_TRADE_GENERATOR_HPP_
|
|
9
|
-
#define NETWORKIT_RANDOMIZATION_CURVEBALL_UNIFORM_TRADE_GENERATOR_HPP_
|
|
10
|
-
|
|
11
|
-
#include <stdexcept>
|
|
12
|
-
#include <utility>
|
|
13
|
-
#include <vector>
|
|
14
|
-
|
|
15
|
-
#include <networkit/Globals.hpp>
|
|
16
|
-
|
|
17
|
-
namespace NetworKit {
|
|
18
|
-
|
|
19
|
-
class CurveballUniformTradeGenerator final {
|
|
20
|
-
public:
|
|
21
|
-
using value_type = std::vector<std::pair<node, node>>;
|
|
22
|
-
|
|
23
|
-
private:
|
|
24
|
-
const count numTrades;
|
|
25
|
-
const node numNodes;
|
|
26
|
-
|
|
27
|
-
public:
|
|
28
|
-
CurveballUniformTradeGenerator(count trade_num, node num_nodes)
|
|
29
|
-
: numTrades(trade_num), numNodes(num_nodes) {
|
|
30
|
-
if (num_nodes <= 1)
|
|
31
|
-
throw std::runtime_error("At least two nodes are required.");
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
value_type generate() const;
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
} // namespace NetworKit
|
|
38
|
-
|
|
39
|
-
#endif // NETWORKIT_RANDOMIZATION_CURVEBALL_UNIFORM_TRADE_GENERATOR_HPP_
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* DegreePreservingShuffle.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: 21.08.2018
|
|
5
|
-
* Author: Manuel Penschuck <networkit@manuel.jetzt>
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_RANDOMIZATION_DEGREE_PRESERVING_SHUFFLE_HPP_
|
|
9
|
-
#define NETWORKIT_RANDOMIZATION_DEGREE_PRESERVING_SHUFFLE_HPP_
|
|
10
|
-
|
|
11
|
-
#include <networkit/base/Algorithm.hpp>
|
|
12
|
-
#include <networkit/graph/Graph.hpp>
|
|
13
|
-
#include <networkit/graph/GraphW.hpp>
|
|
14
|
-
|
|
15
|
-
namespace NetworKit {
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Implementation of the preprocessing step proposed in
|
|
19
|
-
* "Smaller Universes for Uniform Sampling of 0,1-matrices with fixed row and column sums"
|
|
20
|
-
* by Annabell Berger, Corrie Jacobien Carstens [https://arxiv.org/abs/1803.02624]
|
|
21
|
-
*
|
|
22
|
-
* The algorithms randomizes a graph without changing its topology simply
|
|
23
|
-
* by renaming nodes. For any degree d (in case of an directed graph it's a degree pair)
|
|
24
|
-
* consider the set X_d of node ids which have this degree. Then shuffle the ids in X_d.
|
|
25
|
-
*
|
|
26
|
-
* Hence the algorithm satisfies: For all x in Ginput:
|
|
27
|
-
* i) Ginput.degreeIn(x) = Goutput.degreeIn(x)
|
|
28
|
-
* ii) Ginput.degreeOut(x) = Goutput.degreeOut(x)
|
|
29
|
-
*
|
|
30
|
-
* The authors argue that applying this preprocessing step before executing (Global)Curveball
|
|
31
|
-
* leads to a faster mixing time.
|
|
32
|
-
*
|
|
33
|
-
* @node If you want to use it as a preprocessing step to GlobalCurveball, it's more
|
|
34
|
-
* efficient to set degreePreservingShufflePreprocessing in GlobalCurveball's constructor.
|
|
35
|
-
*/
|
|
36
|
-
class DegreePreservingShuffle final : public Algorithm {
|
|
37
|
-
public:
|
|
38
|
-
DegreePreservingShuffle() = delete;
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Instantiate a DegreePreservingShuffle object
|
|
42
|
-
*
|
|
43
|
-
* @param G Input graph that will be shuffled
|
|
44
|
-
*/
|
|
45
|
-
explicit DegreePreservingShuffle(const Graph &G);
|
|
46
|
-
|
|
47
|
-
~DegreePreservingShuffle() override;
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Execute trades as configured in the constructor. The algorithm is parallel.
|
|
51
|
-
* @warning This function has to be called exactly once before invoking getGraph()
|
|
52
|
-
*/
|
|
53
|
-
void run() final;
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
* Returns a shuffled copy of the input graph.
|
|
57
|
-
* @warning Invoke run() before calling this function.
|
|
58
|
-
*/
|
|
59
|
-
GraphW getGraph() const;
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* Returns a reference to the permutation used for shuffling,
|
|
63
|
-
* with permutation[old] = new.
|
|
64
|
-
*
|
|
65
|
-
* @warning Invoke run() before calling this function.
|
|
66
|
-
*/
|
|
67
|
-
const std::vector<node> &getPermutation() const noexcept { return permutation; }
|
|
68
|
-
|
|
69
|
-
static GraphW shuffleGraph(const Graph &input) {
|
|
70
|
-
DegreePreservingShuffle algo(input);
|
|
71
|
-
algo.run();
|
|
72
|
-
return algo.getGraph();
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
private:
|
|
76
|
-
const Graph *G;
|
|
77
|
-
std::vector<node> permutation;
|
|
78
|
-
};
|
|
79
|
-
|
|
80
|
-
} // namespace NetworKit
|
|
81
|
-
|
|
82
|
-
#endif // NETWORKIT_RANDOMIZATION_DEGREE_PRESERVING_SHUFFLE_HPP_
|
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* EdgeSwitching.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: 19.10.2019
|
|
5
|
-
* Author: Manuel Penschuck <networkit@manuel.jetzt>
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_RANDOMIZATION_EDGE_SWITCHING_HPP_
|
|
9
|
-
#define NETWORKIT_RANDOMIZATION_EDGE_SWITCHING_HPP_
|
|
10
|
-
|
|
11
|
-
#include <random>
|
|
12
|
-
#include <string>
|
|
13
|
-
#include <utility>
|
|
14
|
-
|
|
15
|
-
#include <networkit/Globals.hpp>
|
|
16
|
-
#include <networkit/base/Algorithm.hpp>
|
|
17
|
-
#include <networkit/graph/Graph.hpp>
|
|
18
|
-
#include <networkit/graph/GraphW.hpp>
|
|
19
|
-
|
|
20
|
-
namespace NetworKit {
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* EdgeSwitching and EdgeSwitchingInPlace implement the same algorithm -- while the former copies
|
|
24
|
-
* the input graph provided and is more versatile, the in-place implementation only keeps a
|
|
25
|
-
* reference to the input graph.
|
|
26
|
-
*
|
|
27
|
-
* The Edge Switching Markov Chain ["The markov chain simulation method for generating connected
|
|
28
|
-
* power law random graphs", Mihail and Zegura] perturbates simple directed or undirected graphs
|
|
29
|
-
* while preserving their degrees. In each step, two edges are selected uniformly at random, and
|
|
30
|
-
* their endpoints exchanged. Swaps that introduce multi-edges or self-loops are rejected WITHOUT
|
|
31
|
-
* replacement -- this is necessary to allow uniform sampling [see "Switching edges to randomize
|
|
32
|
-
* networks: what goes wrong and how to fix it", Carstens and Horadam]. The number of successful
|
|
33
|
-
* swaps can be queried using getNumberOfAffectedEdges()/2.
|
|
34
|
-
*
|
|
35
|
-
* @note In general, simple edge switching does not yield a uniform distribution on simple DIRECTED
|
|
36
|
-
* graphs because the orientation of directed triangles cannot be changed. Using
|
|
37
|
-
* DegreePreservingShuffle as a preprocessing step overcomes this limitation. The preprocessing can
|
|
38
|
-
* also jump-start the perturbation process, yielding to potentially faster mixing.
|
|
39
|
-
*
|
|
40
|
-
* It's recommended to implement the preprocessing step in the calling code or to use copying
|
|
41
|
-
* EdgeSwitching implementation.
|
|
42
|
-
*/
|
|
43
|
-
class EdgeSwitchingInPlace : public Algorithm {
|
|
44
|
-
public:
|
|
45
|
-
/**
|
|
46
|
-
* Constructs an EdgeSwitch algorithm that will change the input graph IN-PLACE.
|
|
47
|
-
* @warning For directed graphs preprocessing with DegreePreservingShuffle is necessary. Either
|
|
48
|
-
* do it manually, or use another constructor.
|
|
49
|
-
*/
|
|
50
|
-
EdgeSwitchingInPlace(GraphW &G, double numberOfSwitchesPerEdge = 10.0) : graph(G) {
|
|
51
|
-
setNumberOfSwitchesPerEdge(numberOfSwitchesPerEdge);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
~EdgeSwitchingInPlace() override = default;
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* Attempts to carry out numberOfSwitchesPerEdge * numberOfEdges() edge swaps (i.e., rejected
|
|
58
|
-
* swaps are counted as well, see Algorithm's description why)
|
|
59
|
-
* @note This function can be called several times. The graph's topology may not be changed
|
|
60
|
-
* externally between two invocations.
|
|
61
|
-
*/
|
|
62
|
-
void run() override;
|
|
63
|
-
|
|
64
|
-
/// Return a reference to the perturbed graph
|
|
65
|
-
GraphW &getGraph() const { return graph; }
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Returns twice the total number of non-rejected swaps carried out during calls to run().
|
|
69
|
-
* It hence has the same semantics as Curveball::getNumberOfAffectedEdges().
|
|
70
|
-
* @note If run() is called multiple time, the sum over all invocations is returned.
|
|
71
|
-
*/
|
|
72
|
-
count getNumberOfAffectedEdges() const noexcept { return 2 * numberOfSwapsPerformed; }
|
|
73
|
-
|
|
74
|
-
/// Return (average) number of switches per edge that will be executed on next run
|
|
75
|
-
double getNumberOfSwitchesPerEdge() const noexcept { return numberOfSwitchesPerEdge; }
|
|
76
|
-
|
|
77
|
-
/// Modify (average) number of switches per edge that will be executed on next run
|
|
78
|
-
void setNumberOfSwitchesPerEdge(double x);
|
|
79
|
-
|
|
80
|
-
protected:
|
|
81
|
-
GraphW &graph;
|
|
82
|
-
std::discrete_distribution<node>
|
|
83
|
-
degreeDistribution; ///< Return node x with probability proportional to degree(x)
|
|
84
|
-
|
|
85
|
-
double numberOfSwitchesPerEdge;
|
|
86
|
-
count numberOfSwapsPerformed{0};
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
/**
|
|
90
|
-
* EdgeSwitching and EdgeSwitchingInPlace implement the same algorithm -- while the former copies
|
|
91
|
-
* the input graph provided and is more versatile, the in-place implementation only keeps a
|
|
92
|
-
* reference to the input graph.
|
|
93
|
-
*
|
|
94
|
-
* The Edge Switching Markov Chain ["The markov chain simulation method for generating connected
|
|
95
|
-
* power law random graphs", Mihail and Zegura] perturbates simple directed or undirected graphs
|
|
96
|
-
* while preserving their degrees. In each step, two edges are selected uniformly at random, and
|
|
97
|
-
* their endpoints exchanged. Swaps that introduce multi-edges or self-loops are rejected WITHOUT
|
|
98
|
-
* replacement -- this is necessary to allow uniform sampling [see "Switching edges to randomize
|
|
99
|
-
* networks: what goes wrong and how to fix it", Carstens and Horadam]. The number of successful
|
|
100
|
-
* swaps can be queried using getNumberOfAffectedEdges()/2.
|
|
101
|
-
*
|
|
102
|
-
* @note In general, simple edge switching does not yield a uniform distribution on simple DIRECTED
|
|
103
|
-
* graphs because the orientation of directed triangles cannot be changed. Using
|
|
104
|
-
* DegreePreservingShuffle as a preprocessing step overcomes this limitation. The preprocessing can
|
|
105
|
-
* also jump-start the perturbation process, yielding to potentially faster mixing.
|
|
106
|
-
*
|
|
107
|
-
* It's recommended to implement the preprocessing step in the calling code or to use copying
|
|
108
|
-
* EdgeSwitching implementation.
|
|
109
|
-
*/
|
|
110
|
-
class EdgeSwitching : public Algorithm {
|
|
111
|
-
public:
|
|
112
|
-
/// Constructs an EdgeSwitch algorithm that contains a COPY of the input graph.
|
|
113
|
-
explicit EdgeSwitching(const GraphW &G, double numberOfSwitchesPerEdge = 10.0,
|
|
114
|
-
bool degreePreservingShufflePreprocessing = true);
|
|
115
|
-
|
|
116
|
-
~EdgeSwitching() override = default;
|
|
117
|
-
|
|
118
|
-
/**
|
|
119
|
-
* Attempts to carry out numberOfSwitchesPerEdge * numberOfEdges() edge swaps (i.e., rejected
|
|
120
|
-
* swaps are counted as well, see Algorithm's description why)
|
|
121
|
-
*/
|
|
122
|
-
void run() override { inPlaceAlgorithm.run(); }
|
|
123
|
-
|
|
124
|
-
/// Return a reference to the perturbed graph
|
|
125
|
-
const GraphW &getGraph() const { return ownedGraph; }
|
|
126
|
-
|
|
127
|
-
/**
|
|
128
|
-
* Move graph owned by the algorithm out.
|
|
129
|
-
* @warning Do not call run() after calling moveGraph()
|
|
130
|
-
*/
|
|
131
|
-
GraphW moveGraph() { return std::move(ownedGraph); }
|
|
132
|
-
|
|
133
|
-
/**
|
|
134
|
-
* Returns twice the total number of non-rejected swaps carried out during calls to run().
|
|
135
|
-
* It hence has the same semantics as Curveball::getNumberOfAffectedEdges().
|
|
136
|
-
* @note If run() is called multiple time, the sum over all invocations is returned.
|
|
137
|
-
*/
|
|
138
|
-
count getNumberOfAffectedEdges() const noexcept {
|
|
139
|
-
return inPlaceAlgorithm.getNumberOfAffectedEdges();
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
/// Return (average) number of switches per edge that will be executed on next run
|
|
143
|
-
double getNumberOfSwitchesPerEdge() const noexcept {
|
|
144
|
-
return inPlaceAlgorithm.getNumberOfSwitchesPerEdge();
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
/// Modify (average) number of switches per edge that will be executed on next run
|
|
148
|
-
void setNumberOfSwitchesPerEdge(double x) { inPlaceAlgorithm.setNumberOfSwitchesPerEdge(x); }
|
|
149
|
-
|
|
150
|
-
private:
|
|
151
|
-
GraphW ownedGraph;
|
|
152
|
-
EdgeSwitchingInPlace inPlaceAlgorithm;
|
|
153
|
-
};
|
|
154
|
-
|
|
155
|
-
} // namespace NetworKit
|
|
156
|
-
|
|
157
|
-
#endif // NETWORKIT_RANDOMIZATION_EDGE_SWITCHING_HPP_
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* GlobalCurveball.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: 26.05.2018
|
|
5
|
-
* Author: Manuel Penschuck <networkit@manuel.jetzt>
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_RANDOMIZATION_GLOBAL_CURVEBALL_HPP_
|
|
9
|
-
#define NETWORKIT_RANDOMIZATION_GLOBAL_CURVEBALL_HPP_
|
|
10
|
-
|
|
11
|
-
#include <memory>
|
|
12
|
-
#include <utility>
|
|
13
|
-
|
|
14
|
-
#include <networkit/base/Algorithm.hpp>
|
|
15
|
-
#include <networkit/graph/Graph.hpp>
|
|
16
|
-
|
|
17
|
-
namespace NetworKit {
|
|
18
|
-
|
|
19
|
-
// pImpl
|
|
20
|
-
namespace CurveballDetails {
|
|
21
|
-
class GlobalCurveballImpl;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
class GlobalCurveball final : public Algorithm {
|
|
25
|
-
public:
|
|
26
|
-
/**
|
|
27
|
-
* Instantiate a GlobalCurveball object
|
|
28
|
-
*
|
|
29
|
-
* @param G Undirected and unweighted graph to be randomized
|
|
30
|
-
* @param number_of_global_trades Number of global trades to be executed (each edge
|
|
31
|
-
* is considered exactly twice per global traded)
|
|
32
|
-
* @param allowSelfLoops May only be set if graph is directed.
|
|
33
|
-
* @param degreePreservingShufflePreprocessing Execute DegreePreservingShuffle
|
|
34
|
-
* (see Algorithm for description) as a preprocessing
|
|
35
|
-
* step. This is more efficient than calling the algorithm
|
|
36
|
-
* explicitly.
|
|
37
|
-
*
|
|
38
|
-
* @note Self loops can only be realized for directed graphs.
|
|
39
|
-
* @warning If self loops are forbidden, degreePreservingShuffle is necessary for
|
|
40
|
-
* directed graphs, since otherwise some topologies cannot be realized (i.e., only
|
|
41
|
-
* preprocessing allows for uniform samples).
|
|
42
|
-
*/
|
|
43
|
-
explicit GlobalCurveball(const Graph &G, count number_of_global_trades = 20,
|
|
44
|
-
bool allowSelfLoops = false,
|
|
45
|
-
bool degreePreservingShufflePreprocessing = true);
|
|
46
|
-
|
|
47
|
-
~GlobalCurveball() override;
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Execute trades as configured in the constructor. The algorithm is not parallel.
|
|
51
|
-
* @warning This function has to be called exactly one before invoking getGraph()
|
|
52
|
-
*/
|
|
53
|
-
void run() final;
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
* Returns a new graph instance with the same degree sequence as the input
|
|
57
|
-
* graph, but with randomized neighbourhoods.
|
|
58
|
-
*/
|
|
59
|
-
GraphW getGraph();
|
|
60
|
-
|
|
61
|
-
private:
|
|
62
|
-
std::unique_ptr<CurveballDetails::GlobalCurveballImpl> impl;
|
|
63
|
-
unsigned numGlobalTrades;
|
|
64
|
-
bool degreePreservingShuffle;
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
} // namespace NetworKit
|
|
68
|
-
|
|
69
|
-
#endif // NETWORKIT_RANDOMIZATION_GLOBAL_CURVEBALL_HPP_
|