CARAT: Do Materials LLMs Reason or Recite?
Organizations: Beihang University · Xi’an Jiaotong University · Imperial College London · Peking University
Abstract
When a materials LLM answers a question about crystal structure, does it reason from the structure or copy an answer already printed in its input? Accuracy cannot tell: a structural description often prints the very field it is scored against. CARAT holds question and gold answer fixed across eight matched views, names each structural relation separately in GraphSpace, and adds matched fine-tuning, answer masking, evidence injection, paired inference, and a rule that can withhold claims. First, on the benchmark's hardest families the grounded view is worth 17.3 points over formula inputs. Second, we turn that scrutiny on ourselves. GraphSpace beats a plain periodic graph by 19.3 points, but that margin is two effects at once: where the plain rendering carries everything the question needs it is 1.96 points, and where it omits those fields entirely, 46.7 points. The headline mostly measures what the baseline lacked, not how evidence is presented. Third, we attack our own benchmark. A rule that skips the link and reads the list directly answers four of seven hardened families, so we rebuilt it until eleven such shortcuts sat near chance. The frozen model quotes that link yet answers the same when we redirect it, on 95.6% of paired cases: it repeats the relation without using it. After matched supervision it reaches 99.8%, and deleting the link drops it to 23.4%, below the 27.0% the best shortcut reaches: both steps are learnable.
Figures & tables
| Overall | Per-family answer-exact rate | |||||||
| View | Micro | CIF plan | EFS path | Suff. | Graph | Local | MOF | Symm. |
| Answer printed (the answer field is verbatim in the evidence) | ||||||||
| GraphSpace full | 0.956 | 1.000 | 0.531 | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 |
| citations | 0.876 | 1.000 | 0.573 | 1.000 | 0.578 | 1.000 | 1.000 | 1.000 |
| graph | 0.805 | 1.000 | 0.479 | 1.000 | 0.265 | 1.000 | 1.000 | 1.000 |
| Answer masked (symmetry-local block removed) | ||||||||
| Seed | GS full | Best-comp. | Formula | vs formula (95% CI, pp) | worst (pp) | Worst family |
|---|---|---|---|---|---|---|
| 42 | 0.956 | 0.944 | 0.783 | EFS path | ||
| 43 | 0.958 | 0.943 | 0.789 | EFS path | ||
| 44 | 0.960 | 0.943 | 0.780 | EFS path |
| Condition | What it tests | Frozen | Pointer-SFT | |
| , pointer shown | selection computation | 882 | 32.3% | 99.8% |
| , pointer deleted | residual shortcut | 882 | 26.8% | 23.4% |
| Pointer moved (twins) | selection alone | 1,764 | 25.9% | 99.9% |
| Single list (control) | computation alone | 882 | 60.2% | 99.8% |
| Twin agreement when only the pointer moves | 882 | 95.6% | 0.11% | |
| Paired effect of showing the pointer (pp) | 882 | |||
| Property | Result | Verdict |
|---|---|---|
| Canonical order | / | Pass |
| Round-trip decode | / | Pass |
| Scalability | / | Pass |
| Cross-material | Pass | |
| No redundancy | pp | Strong |
Appendix figures & tables29 assets
Supplementary material from the paper’s appendix.
Appendix
| Audit | Checks | Claim boundary |
|---|---|---|
| Scoring | Gold replay; null policies | Validates tested scorer contracts |
| Shortcuts | Answer masking; identity edits | Separates readback from evidence use |
| Mechanism | Probes; activation patching | No localized causal site established |
| Generalization | Element, symmetry, size, phrasing | Restricted to evaluated holdouts |
| Reliability | Refusal; confidence; judge agreement | Task- and judge-dependent evidence |
| Tool reference | MACE-MP comparison | Different evaluation denominators |
| Input | Acc. | |
|---|---|---|
| Anonymous | — | |
| Identity shown | ||
| Formula hidden | ||
| Sites relabelled | ||
| Labels shuffled |
| View / group | S4c accuracy | n |
|---|---|---|
| Grounded (all cases) | 68.5% | 499 |
| cites both orbit_link & sibling | 72.1% | 165 |
| cites only orbit_link | 67.5% | 329 |
| cites neither | 20.0% | 5 |
| Plain-graph (all cases) | 46.3% | 367 |
| cites orbit_link (any family) | n/a, rate = | — |
| View | Group | Accuracy |
|---|---|---|
| graphspace_full | Print-through | |
| graphspace_minus_graph | Print-through | |
| graphspace_no_evidence_refs | Print-through | |
| graphspace_minus_symmetry_local | Answer-masked | |
| raw_cif | Alternative | |
| raw_lattice_sites | Alternative |
| Variant | Operation | S4c acc | 95% CI | |
| V0 grounded | (baseline) | 68.5% | — | — |
| V1 | remove orbit-link tags | 66.3% | ||
| V2 | also remove sibling references | 63.4% | ||
| V3 | also remove typed neighbour shell | 25.1% | ||
| V0 plain-graph | (baseline) | 45.1% | — | — |
| V4 | inject typed edges into plain-graph | 74.3% |
| View | Baseline | Thinking-SFT | Paired | 95% CI |
|---|---|---|---|---|
| gs (frozen baseline) | 34.53% | 37.68% | pp | |
| V1 mask orbit_link | 33.47% | 37.37% | pp | |
| V4 pg orbit_link | 29.42% | 35.26% | pp | |
| V2 mask sibling_site_ref | 31.74% | 20.58% | pp | |
| V3 mask sibling_neighbours_typed | 11.89% | 4.00% | pp |
| Arm | heads | acc | S4c drop | 95% CI |
|---|---|---|---|---|
| intact_baseline | 0 | 1.0000 (341/341) | — | |
| top5_orbit_readers | 5 | 0.9531 (325/341) | ||
| Random heads (seed 42, max) | 5 | — | — |
| Release | n | Compress | Warnings |
|---|---|---|---|
| Pilot | |||
| Final canonical | |||
| Full (v1) | — | ||
| Full (v2) | |||
| Hardened v2 | |||
| Hardened v3 (NL rewrite) |
| Axiom | Result | Sample |
|---|---|---|
| A1 ′ hierarchical idempotency | PASS 100% | 170,290 rows |
| A2 ′ permutation invariance (sampled) | PASS 100% | 120 sampled |
| A3 ′ information conservation | PASS 100% | 170,290 rows |
| Class | Pass/Total | Rate |
|---|---|---|
| A elemental substitution | 33/40 | 82.5% |
| C symmetry variant | 30/30 | 100% |
| B ′ synthetic supercell | 30/30 | 100% |
| CE | Removed field | Lemma | Witness |
|---|---|---|---|
| CE-1 | Wyckoff labels | L2 space group | v4 anti-readback pass |
| CE-2 | Element, typed neighbours | L4 element | V3 ; V4 |
| CE-3 | Edge multiplicity | L3 distance mset | rows |
| CE-4 | Boundary clamp | L1 site order | pass |
| View | Answer-exact | Field acc. | Macro-hard-slice |
|---|---|---|---|
| GraphSpace full | 0.956 | 0.978 | 0.956 |
| citations | 0.876 | 0.938 | 0.926 |
| graph | 0.805 | 0.913 | 0.899 |
| symmetry | 0.922 | 0.956 | 0.944 |
| Raw CIF | 0.761 | 0.903 | 0.899 |
| Plain graph | 0.821 | 0.899 | 0.891 |
| Hard slice | Task family | Items |
|---|---|---|
| CIF generation plan | CIF plan reconstruction | 148 |
| EFS path | EFS path reasoning | 72 |
| Insufficient or adv. | Evidence sufficiency | 174 |
| Insufficient or adv. | EFS path reasoning | 24 |
| MOF | MOF module property | 136 |
| Standard | Graph construction | 204 |
| Family | What is asked | Items | Majority | List rule |
|---|---|---|---|---|
| S1 | Count distinct Wyckoff orbits | 6,555 | 0.101 | — |
| S2 | -th neighbour, then its own CN | 23,993 | 0.272 | 0.949 |
| S3 | Element with max mean coordination | 7,021 | 0.069 | — |
| S4a | Anchor CN via its sibling | 10,197 | 0.316 | 0.881 |
| S4b | Anchor second shell via its sibling | 9,769 | 0.224 | 0.996 |
| S4c | Anchor dominant element via its sibling | 10,197 | 0.505 | 0.932 |
| Training view | Paired | 95% CI | |
|---|---|---|---|
| GraphSpace full | 229,485 | ||
| citations | 229,528 | ||
| graph | 227,106 | ||
| symmetry | 229,498 | ||
| Raw CIF | 229,530 | ||
| Plain graph | 229,491 |
| Family | Answer | Items | Majority | List rule | Model |
|---|---|---|---|---|---|
| S2 | CN of the -th neighbour | 23,993 | 27.2 | 94.9 | — |
| S4a | CN via the sibling | 10,197 | 31.6 | 88.1 | 31.8 |
| S4b | Second shell via sibling | 9,769 | 22.4 | 99.6 | 18.6 |
| S4c | Dominant element via sibling | 10,197 | 50.5 | 93.2 | 68.4 |
| Family | Arm | Accuracy | 95% CI | max | |
|---|---|---|---|---|---|
| F1 multi-candidate ( ) | pointer shown | 882 | 32.3% | yes | |
| F1 multi-candidate ( ) | pointer deleted | 882 | 26.8% | no | |
| F2 pointer swap | pointer shown | 1,764 | 25.9% | no | |
| F3 single-candidate control | pointer shown | 882 | 60.2% | — |
| Family | Arm | Frozen | Pointer-SFT | |
|---|---|---|---|---|
| F1 multi-candidate ( ) | pointer shown | 882 | 32.3% | 99.8% |
| F1 multi-candidate ( ) | pointer deleted | 882 | 26.8% | 23.4% |
| F2 pointer swap | pointer shown | 1,764 | 25.9% | 99.9% |
| F3 single-candidate control | pointer shown | 882 | 60.2% | 99.8% |
| Group | Family | 95% CI | ||
|---|---|---|---|---|
| Both views carry | S1 orbit count | 19,401 | ||
| the required | S2 -th nbr. CN | 71,163 | ||
| inputs | S3 argmax elem. coord | 20,862 | ||
| S4d multiattr match | 28,971 | |||
| pooled | 140,397 | — | ||
| Plain view cannot | S4a anchor CN | 30,107 |