Skip to content

CausalDensityDimension

Compare
Choose a tag to compare
@maxitg maxitg released this 26 Feb 17:20
· 39 commits to master since this release
0136141

This release introduces CausalDensityDimension which allows one to estimate Myrheim-Meyer dimension of causal graphs:

Needs["GeneralUtilities`"];
dimensionsPlot[rule_, init_, generationCount_, eventOrderingFunction_, sampleSize_] := ModuleScope[
  history = WolframModel[rule, init, generationCount, "EventOrderingFunction" -> eventOrderingFunction];
  eventRangesForGenerations = # + {1, 0} & /@ Partition[Accumulate @ history["GenerationEventsCountList"], 2, 1];
  causalGraph = history["CausalGraph"];
  dimensionsForGenerations = Join[
    {Missing[]},
    MeanAround /@
      ParallelMap[CausalDensityDimension[causalGraph, {1, #}] &,
          RandomSample[#, UpTo[sampleSize]] & /@ Range @@@ eventRangesForGenerations,
          {2}]];
  ListPlot[dimensionsForGenerations, PlotRange -> All, Frame -> True, FrameLabel -> {"Generations", "Dimension"}]
];
In[] := dimensionsPlot[
  {{1, 2, 3}, {4, 3, 5}} -> {{6, 3, 7}, {6, 1, 2}, {3, 4, 1}}, {{1, 1, 1}, {1, 1, 1}}, 60, Automatic, 30]

image

In other news:

  • "FeatureAssociation" property allows one to extract an association with named features (more work still needs to be done on the features themselves).
  • More functions now support syntax autocompletion.
  • We improved the usage messages and function templates to use more descriptive argument names.
  • WolframPhysicsProjectStyleData is now renamed to SetReplaceStyleData. The old name still works for backwards compatibility.

Thanks to @SantiagoGiner, @mrektor, and @daneelsan for contributing to this release!