Nanopublication

< Home

ID

https://w3id.org/np/RAHw34SGMJ3INmE-bHdihSh7qg2folQ06NUEvHuutFAx8

Formats

.trig | .trig.txt | .jelly | .jelly.txt | .jsonld | .jsonld.txt | .nq | .nq.txt | .xml | .xml.txt

Content

@prefix this: <https://w3id.org/np/RAHw34SGMJ3INmE-bHdihSh7qg2folQ06NUEvHuutFAx8> .
@prefix sub: <https://w3id.org/np/RAHw34SGMJ3INmE-bHdihSh7qg2folQ06NUEvHuutFAx8/> .
@prefix np: <http://www.nanopub.org/nschema#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix npx: <http://purl.org/nanopub/x/> .
@prefix dc: <http://purl.org/dc/terms/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

sub:Head {
  this: a np:Nanopublication;
    np:hasAssertion sub:assertion;
    np:hasProvenance sub:provenance;
    np:hasPublicationInfo sub:pubinfo .
}

sub:assertion {
  <https://w3id.org/delphi/resource/assessment/levin-2015-place-01--claim-test> a <https://w3id.org/delphi/ontology/Assessment>;
    dc:description "analysis.py fetches DEM_morphogenesis.m (SPM12 and current main) and spm_ADEM.m, parses the target and defaults, and runs 20 seeds of the 32-bin simulation for each initial-expectation spread (randn/8 from the file; sd e^2 from the paper's text). Each run is deterministic, plus a sensitivity copy with process noise. At step 32 it computes the RMS position error under the best of all 8! cell-to-target assignments and the number of correctly typed cells, and compares free energy at steps 1 and 32.";
    <http://www.w3.org/2000/01/rdf-schema#comment> "Measured: 19 runs of 20 assembled at step 32 (file initialisation randn/8) (n = 20). Interpretation: MATLAB is unavailable, so the test uses an independent numpy re-implementation (levin-2015-place-01/morphogenesis.py) of DEM_morphogenesis.m. Re-implemented exactly from the file: the 8-cell target (matrix T for L = 2; four cell types coded by signals 1-4), sensations of position (the exogenous linear gradient), intrinsic signal and extracellular signal (monoexponential decay, k = 1, scaled by the sensitivity ramp 1 - exp(-2t) with t = iY/32 as set by spm_ADEM), softmax identity expectations, model sensory precision exp(3), prior precision exp(-2) on identities, action precision exp(2) with action restricted to each cell's own sensations, and initial action equal to the t = 0 prediction (all cells near the centroid). Not re-implemented: spm_ADEM's generalised filter (embedding order 2, local-linearisation update). Instead each of the 32 bins integrates the gradient flow of the Laplace free energy for one time unit (dt = 1, 200 Euler sub-steps; 400 and 800 sub-steps give identical results to 3 decimals). Free energy is spm_ADEM's -J (E'iS E/2 - logdet(qu.c) - logdet(iS)/2) without generalised-motion terms, so only its changes are comparable to the paper's. The paper says initial expectations had 'a log precision of minus four' (sd = e^2 = 7.4), but the file uses randn(n,n)/8 (log precision about +4.2), which matches the paper's 'small random expectations' and 'undifferentiated'. The rule fixed before any baseline run was to run both and call the claim supported only if both pass, and mixed if they disagree. Assessor note checked: the current SPM file's header comment says 16 cells, but its default target (L = 2) has exactly 8 cells, the paper's head-body-tail form, identical in SPM12 r7679 and current main. SPLIT = 0, so the bisection path is off by default, as noted. 'Self-assemble into that form' means that after the paper's 32 time steps the cells sit within half a target spacing (RMS, best one-to-one assignment) of the target positions, with at least 7/8 cells' most probable identity of the type encoded at their position. The paper itself notes the 32-step result is 'not perfect', which is why 7/8 is allowed.";
    <http://www.w3.org/2000/01/rdf-schema#label> "Claim test of levin-2015-place-01: mixed, confidence 0.6";
    <http://www.w3.org/2000/01/rdf-schema#seeAlso> <https://github.com/fractastical/delphisci/blob/bf2af6ee0a84e23ffa6414ad7a0a50a8c276506e/test-data/claim-tests/levin-papers/levin-2015-place-01/result.json>;
    prov:wasAttributedTo <https://w3id.org/delphi/resource/agent/delphisci-claim-tester-claude-opus-5-5>;
    <https://w3id.org/delphi/ontology/admissibleDatasets> "The generative model, target morphology (8 cells, head-body-tail) and parameters as specified by the paper and its public SPM implementation. MATLAB is unavailable, so an independent Python re-implementation is used: same generative model (target locations, signal codes, softmax identities, monoexponential signal decay, exogenous linear gradients, time-increasing extracellular sensitivity, precisions), integrated by gradient descent on the Laplace-approximated free energy for internal states and action (prediction-error-closing signal expression, gradient-driven migration). If the current SPM file defaults to 16 cells, the 8-cell head-body-tail target of the paper (from the SPM12 file if it encodes it) is used.";
    <https://w3id.org/delphi/ontology/assessmentType> "claim-test/0.1.0";
    <https://w3id.org/delphi/ontology/dataKind> "computational";
    <https://w3id.org/delphi/ontology/disconfirmingObservation> "In most seeded runs the cells do not reach the target configuration or do not differentiate into the encoded types, or free energy does not fall.";
    <https://w3id.org/delphi/ontology/evidenceAgainst> "After seeing the deterministic results, a disclosed sensitivity condition added the SPM generative process's sensory noise (precision exp(16)), which the pre-registered re-implementation omits. It did not change any count by more than one run.",
      "Cell types use the file's encoding (T values 2, 1, 4, 3 from left to right along the body axis). The paper's head/body/tail labels map onto these four signal codes.",
      "Independent re-implementation, not the published MATLAB solver. spm_ADEM's generalised filtering in generalised coordinates can follow a different path through the same free-energy landscape. Nothing was run in MATLAB or Octave.",
      "Seeds are numpy default_rng(0..19). The paper reports one run with MATLAB rng('default'), which cannot be matched outside MATLAB.",
      "This is a proof-of-principle claim about a model. Reproducing it says nothing about whether real cells minimise variational free energy.",
      "Under the file's initialisation (randn/8) the claim reproduces clearly: 19/20 runs assemble, with median RMS 0.29 against a threshold of 0.5, a median of 8/8 correct types, and free energy falling in every run. Under the paper's literal 'log precision -4' (initial identities already nearly one-hot and random), 14/20 assemble, which falls in the pre-registered mixed band. The mixed verdict comes from that initialisation discrepancy and is not evidence against self-assembly in the model.";
    <https://w3id.org/delphi/ontology/expectedObservation> "After 32 steps of free-energy descent from a common undifferentiated start, most seeded runs place cells within half a target spacing of the target form (RMS, best assignment) with at least 7/8 correct cell types, and ensemble free energy falls.";
    <https://w3id.org/delphi/ontology/failCriterion> "Pre-registered: fewer than 10 of 20 runs (50%) meet (a) and (b), or ensemble free energy at step 32 is not below step 1 in the majority of runs. Between 10 and 15 passing runs is pre-registered as 'mixed'.";
    <https://w3id.org/delphi/ontology/hasConfidence> "0.6"^^xsd:double;
    <https://w3id.org/delphi/ontology/hasEvidence> <https://w3id.org/delphi/resource/evidence/levin-2015-place-01--claim-test--dataset-1>,
      <https://w3id.org/delphi/resource/evidence/levin-2015-place-01--claim-test--dataset-2>,
      <https://w3id.org/delphi/resource/evidence/levin-2015-place-01--claim-test--dataset-3>,
      <https://w3id.org/delphi/resource/evidence/levin-2015-place-01--claim-test--dataset-4>;
    <https://w3id.org/delphi/ontology/hasVerdict> "mixed";
    <https://w3id.org/delphi/ontology/hypothesis> "In the paper's eight-cell active-inference model, cells that start identical, co-located and undifferentiated, and that share one generative model of the target form, end a 32-step free-energy descent near the target head-body-tail configuration with the correct cell types, while ensemble free energy falls.";
    <https://w3id.org/delphi/ontology/inferenceMethod> "Count of passing seeds out of 20 against the 16 (pass) and 10 (fail) thresholds; free energy at step 32 versus step 1 per run.";
    <https://w3id.org/delphi/ontology/passCriterion> "Pre-registered: over 20 random seeds (initial expectations drawn with log precision -4, as in the paper), in at least 16 runs (80%) after 32 time steps (a) the RMS distance between final cell positions and target positions under the best one-to-one assignment is below 0.5 x the smallest distance between two target positions, and (b) at least 7 of 8 cells have their most probable identity (softmax of hidden states) belonging to the cell type encoded at their assigned target location; and in every passing run ensemble free energy at step 32 is below its value at step 1.";
    <https://w3id.org/delphi/ontology/preregistered> "false"^^xsd:boolean .
  
  <https://w3id.org/delphi/resource/claim/levin-2015-place-01> <https://w3id.org/delphi/ontology/hasAssessment>
      <https://w3id.org/delphi/resource/assessment/levin-2015-place-01--claim-test> .
  
  <https://w3id.org/delphi/resource/evidence/levin-2015-place-01--claim-test--dataset-1>
    a <https://w3id.org/delphi/ontology/EvidenceItem>;
    dc:description "generative model, generative process, precisions, target morphology (L = 2), initial conditions and SPLIT procedure re-implemented in Python";
    dc:license "GPL-2.0";
    <http://www.w3.org/2000/01/rdf-schema#label> "Dataset: SPM12 DEM toolbox: DEM_morphogenesis.m (r7679, 2019-10-24)";
    prov:atLocation <https://raw.githubusercontent.com/spm/spm12/main/toolbox/DEM/DEM_morphogenesis.m>;
    prov:wasDerivedFrom <https://github.com/spm/spm12>;
    <https://w3id.org/delphi/ontology/hasChecksum> "sha256:f84c63411b092a939fe65a37ea192562a49694da4085aaac6667032a6477c8c5" .
  
  <https://w3id.org/delphi/resource/evidence/levin-2015-place-01--claim-test--dataset-2>
    a <https://w3id.org/delphi/ontology/EvidenceItem>;
    dc:description "check that the current file has the same target, defaults and model (it differs from SPM12 only in comments and punctuation)";
    dc:license "GPL-2.0";
    <http://www.w3.org/2000/01/rdf-schema#label> "Dataset: SPM (current main): DEM_morphogenesis.m";
    prov:atLocation <https://raw.githubusercontent.com/spm/spm/main/toolbox/DEM/DEM_morphogenesis.m>;
    prov:wasDerivedFrom <https://github.com/spm/spm>;
    <https://w3id.org/delphi/ontology/hasChecksum> "sha256:38e731d2890584b95b01bbd9c4e8b7e9c7d37d52b5b10bbd3ec06fb35b8ec895" .
  
  <https://w3id.org/delphi/resource/evidence/levin-2015-place-01--claim-test--dataset-3>
    a <https://w3id.org/delphi/ontology/EvidenceItem>;
    dc:description "integration conventions: time variable t = iY/nY, dt = 1 per bin, action precision G(1).U, free-energy objective J";
    dc:license "GPL-2.0";
    <http://www.w3.org/2000/01/rdf-schema#label> "Dataset: SPM12 spm_ADEM.m";
    prov:atLocation <https://raw.githubusercontent.com/spm/spm12/main/spm_ADEM.m>;
    prov:wasDerivedFrom <https://github.com/spm/spm12>;
    <https://w3id.org/delphi/ontology/hasChecksum> "sha256:3e0ff256e46463ca8108d6df623fcc355c5498d499f11ad93882ab3c1c51a70e" .
  
  <https://w3id.org/delphi/resource/evidence/levin-2015-place-01--claim-test--dataset-4>
    a <https://w3id.org/delphi/ontology/EvidenceItem>;
    dc:description "claim text and model description (repo copy claim-sources/levin-papers/inputs/2015-place.txt)";
    dc:license "CC BY";
    <http://www.w3.org/2000/01/rdf-schema#label> "Dataset: Friston, Levin, Sengupta & Pezzulo 2015, Knowing one's place (J R Soc Interface)";
    prov:wasDerivedFrom <https://doi.org/10.1098/rsif.2014.1383> .
}

sub:provenance {
  <https://w3id.org/delphi/resource/agent/delphisci-claim-tester-claude-opus-5-5> a
      prov:SoftwareAgent;
    <http://www.w3.org/2000/01/rdf-schema#label> "delphisci claim tester (claude-opus-5.5; cursor local session)";
    prov:actedOnBehalfOf <https://orcid.org/0009-0007-4948-9192>;
    <https://w3id.org/delphi/ontology/usesModel> <https://w3id.org/delphi/resource/model/claude-opus-5-5> .
  
  <https://w3id.org/delphi/resource/model/claude-opus-5-5> a <https://w3id.org/delphi/ontology/LanguageModel>;
    dc:identifier "claude-opus-5.5" .
  
  sub:assertion prov:wasAttributedTo <https://w3id.org/delphi/resource/agent/delphisci-claim-tester-claude-opus-5-5>;
    prov:wasDerivedFrom <https://github.com/fractastical/delphisci/blob/bf2af6ee0a84e23ffa6414ad7a0a50a8c276506e/test-data/claim-tests/levin-papers/levin-2015-place-01/result.json>;
    prov:wasGeneratedBy sub:test .
  
  sub:plan prov:hadPlan <https://github.com/fractastical/delphisci/blob/bf2af6ee0a84e23ffa6414ad7a0a50a8c276506e/test-data/claim-tests/README.md> .
  
  sub:test a prov:Activity;
    prov:qualifiedAssociation sub:plan;
    prov:wasAssociatedWith <https://w3id.org/delphi/resource/agent/delphisci-claim-tester-claude-opus-5-5> .
}

sub:pubinfo {
  this: dc:created "2026-11-08T16:24:31.869Z"^^xsd:dateTime;
    dc:creator <https://orcid.org/0009-0007-4948-9192>;
    dc:license <https://creativecommons.org/licenses/by/4.0/>;
    npx:hasNanopubType <https://w3id.org/delphi/ontology/Assessment>;
    npx:introduces <https://w3id.org/delphi/resource/assessment/levin-2015-place-01--claim-test>;
    <http://www.w3.org/2000/01/rdf-schema#label> "Claim test of levin-2015-place-01: mixed, confidence 0.6";
    <https://w3id.org/delphi/ontology/domain> <https://w3id.org/delphi/resource/domain/levin-papers> .
  
  sub:sig npx:hasAlgorithm "RSA";
    npx:hasPublicKey "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyFHtPB6p0mCjDozxlOY9CmO3nBm7Te3jFbXyLmM+G1tGe47Da0jYIbhkl9Oo1ZjxmCa3LCwlEqK8gj6hEIcL4ahW30JXh9HycfKVk1bugkzMEV15tJdTzAU3sGMFnbNsn43xY2LFLy45tApkRm5byEiM7oRRrooIdwoQKnP4Wzq/bfAoJ9qvW+MGkelyOTd1jbSt+KfmT7xKmDfWzAHddUlWwMX2QJOLxDaffOteTop6ZRgPiNmPJKA/S62Gac9XtSYT3oDkZ6/nr5cxxNLpOyxTf5FPISiCe11xYO/unYjY+mwnOfA8yhJIyx1l0O9I0vpOpn+E5TvyHJV+oSTrvwIDAQAB";
    npx:hasSignature "dCYTu11seTVFDK2zQKK8zMGYTJZX17ZNCJmQ3tyIFe3RYf88cDndxmWWaPV1KqifXT7NYlYotJ0YXj6kO6HlVn6RDRXXPbE8Osx2Prpa8EBbX0p0CWwjt8dqadvEmiKmOoU9+kRNIn+qkjuOnZnX9W5dJKadSIyKOA2NUqrhZXFwlIxbjWcGylLU4VpEJcuTSjruL46uGbFm7Q/j3scj6A/70Y789Kvtp8RblWi2UGWEeD4OHaI5ynqUBnLJDMQP9kkr4iZG/UDsQ/asawlBAxQPL9hUpfGfJb6RBg5Nse6D88oAke8b4mtKqPVgZEnIppmBemSuwjyAxovqbmWZew==";
    npx:hasSignatureTarget this:;
    npx:signedBy <https://orcid.org/0009-0007-4948-9192> .
}