Today 10th June 2021 we just released a new beta test application interface to search for Wolfram Models and Hypergraphs based on search criteria as an external gigabrain.io API service.
Here is documentation and usage information for the API.
API can be called with the following search criteria.
The API call endpoint location is
http://gigabrain.io/physics/export/query
HTTP GET Query REST parameters
Search model based on the analyzed values per step.
stepsFrom Integer value
stepsTo Integer value
dimensionFrom Double value between 0 - 3
dimensionTo Double value between 0 - 3
growthRateFrom Double value between 0 - 3
growthRateTo Double value between 0 - 3
signature String of model signature in format {{2, 3} -> {3, 3}} for models
terminationReason String FixedPoint or MaxGenerations
Search model based on the causal analysis steps calculated from multiple steps.
singularityFrom Integer value
singularityTo Integer value
causalityFrom Double value between 0 - 1
causalityTo Double value between 0 - 1
Example queries
http://gigabrain.io/physics/export/query?stepsFrom=4&stepsTo=40&dimensionFrom=0.5&dimensionTo=5.5&growthRateFrom=0.3&growthRateTo=5.8&terminationReason=MaxGenerations&signature={{2,%203}}%20-%3E%20{{3,%203}}
The interface loads a text file that you can open with a normal text editor. You can copy the results to a new notebook and for example here combine two rules
ids = {};
rules = {};
inits = {};
dimensionStart = 0.5;
dimensionEnd = 5.5;
dimensions = {};
growthRateStart = 0.3;
growthRateEnd = 5.8;
growthRates = {};
signature = "{{2, 3}} -> {{3, 3}}";
signatures = {};
terminationReason = "MaxGenerations";
terminationReasons = {};
stepsStart = 4;
stepsEnd = 40;
steps = {};
AppendTo[ids, "ts55"];
AppendTo[rules, {{{1, 1, 2}, {3, 4, 1}} -> {{4, 4, 5}, {1, 4, 1}, {3,
2, 4}}}];
AppendTo[inits, {{1, 1, 1}, {1, 1, 1}}];
AppendTo[dimensions, 1.9574883626054191];
AppendTo[growthRates, 1.352791305916306];
AppendTo[signatures, {{2, 3}} -> {{3, 3}}];
AppendTo[terminationReasons, "MaxGenerations"];
AppendTo[steps, 8];
AppendTo[ids, "ts56"];
AppendTo[rules, {{{1, 2, 2}, {3, 1, 4}} -> {{4, 2, 5}, {3, 4, 4}, {1,
3, 4}}}];
AppendTo[inits, {{1, 1, 1}, {1, 1, 1}}];
AppendTo[dimensions, 2.1905775596780885];
AppendTo[growthRates, 1.3032738095238092];
AppendTo[signatures, {{2, 3}} -> {{3, 3}}];
AppendTo[terminationReasons, "MaxGenerations"];
AppendTo[steps, 8];
size = 2;
(* Below added functionality to combine the previous models. Show the combination as plot and show the rules that were used in each event *)
ResourceFunction["WolframModel"][{First@rules[[1]],
First@rules[[2]]}, Automatic, 4]["FinalStatePlot"]
ResourceFunction["WolframModel"][{First@rules[[1]],
First@rules[[2]]}, Automatic, 4][ "AllEventsRuleIndices"]
To make a search with a causality analysis you can search for the singularities from a model or the causality percentage calculated for a model.
http://gigabrain.io/physics/export/query?causalityFrom=0.7&causalityTo=0.8
The result is loaded as a text file that you can edit with a text editor
ids = {};
rules = {};
inits = {};
causalityFrom = 0.7;
causalityTo = 0.8;
causalities = {};
AppendTo[ids, "6721"];
AppendTo[rules, {{{1,1,2},{3,2,4}}->{{5,5,3},{3,1,5},{4,2,4}}}];
AppendTo[inits, {{1,1,1},{1,1,1}}];
AppendTo[causalities, 0.7421052631578947];
size = 1;
How to use the API in more detail
- Find models from the same signature for multiple rules.
- Find models with a low growth rate.
- Find models with higher growth rate.
- Combine models with low growth rate to high growth rate from same signature.
Help in development by telling what else would be your search criteria that you would like to try with the API?
How would you use the API with combination of the Multiway system or with different rule ordering?
Currently the analyzed data is calculated with default rule ordering.