Scientific preflight for differential expression

Better biology starts with a defensible comparison.

AI is making biological discovery more accessible. Differential gene expression can reveal how disease, treatment, or environment changes gene activity—but even flawless analysis code cannot rescue messy metadata or a design that cannot support the question.

DEfensible closes that gap. GPT‑5.6 clarifies metadata and research intent; deterministic checks catch confounding, pairing, replication, and rank failures before they waste sequencing, laboratory, or translational effort.

Audit a study
  • No count matrix required
  • No uploaded data stored
  • Explicitly abstains
The missing quality gate
  1. 01
    UnderstandGPT‑5.6 structures metadata and intent
  2. 02
    ProveCode tests confounding, pairing, and rank
  3. 03
    ActProceed, revise, or abstain with evidence
Interactive audit

Ask the question before you run the model.

Start with a curated study or upload a CSV/TSV sample sheet. The public demo accepts research metadata only—never patient-identifiable information.

01
Input

Sample metadata + research question

12 samples · confounded-treatment.csv
Use your own sample sheet

CSV or TSV · up to 150 rows · 250 KB

Name target, reference, subset, and factors to account for.96/600
Processed in memory. API requests use store: false.
02
Human checkpoint

Confirm the interpretation

Curated example interpretation
Model factorsbatch + treatment
Inspect and correct normalized sample factors
Editable normalized factor values for each sample.
Sampletreatmentbatchcell_typetimepointreplicate
vehicle_batch_1_r1
vehicle_batch_1_r2
vehicle_batch_1_r3
vehicle_batch_1_r4
vehicle_batch_1_r5
vehicle_batch_1_r6
drug_batch_2_r1
drug_batch_2_r2
drug_batch_2_r3
drug_batch_2_r4
drug_batch_2_r5
drug_batch_2_r6
See evidence behind the interpretation60 mappings
SampleSource evidenceNormalized as
vehicle_batch_1_r1treatment=vehicletreatmentvehicle
vehicle_batch_1_r1batch=batch_1batchbatch_1
vehicle_batch_1_r1cell_type=monocytecell_typemonocyte
vehicle_batch_1_r1timepoint=24htimepoint24h
vehicle_batch_1_r1replicate=1replicate1
vehicle_batch_1_r2treatment=vehicletreatmentvehicle
vehicle_batch_1_r2batch=batch_1batchbatch_1
vehicle_batch_1_r2cell_type=monocytecell_typemonocyte
vehicle_batch_1_r2timepoint=24htimepoint24h
vehicle_batch_1_r2replicate=2replicate2
vehicle_batch_1_r3treatment=vehicletreatmentvehicle
vehicle_batch_1_r3batch=batch_1batchbatch_1
vehicle_batch_1_r3cell_type=monocytecell_typemonocyte
vehicle_batch_1_r3timepoint=24htimepoint24h
vehicle_batch_1_r3replicate=3replicate3
vehicle_batch_1_r4treatment=vehicletreatmentvehicle
vehicle_batch_1_r4batch=batch_1batchbatch_1
vehicle_batch_1_r4cell_type=monocytecell_typemonocyte

Showing 18 of 60 mappings. The complete provenance is included in the JSON export.

Not estimable

The data cannot separate the requested effect.

Running the analysis would produce coefficients, but they would not support the biological claim.

Target6drug
Reference6vehicle
Residual df10rank 2/3
Deterministic audit

3 checks with traceable evidence

2 unsafe0 review1 passed
PERFECT_CONFOUNDINGbatch is perfectly confounded with treatmentunsafe

Every batch level belongs to only one contrast arm. The model cannot distinguish a treatment effect from a batch effect.

Next step: Collect both contrast arms within the same batch levels or change the scientific claim.

  • batch_1: vehicle
  • batch_2: drug
SINGULAR_DESIGN_MATRIXThe design matrix is not full rankunsafe

Rank 2 is lower than 3 model columns. At least one coefficient is a linear combination of others.

Next step: Remove redundant covariates or redesign the comparison.

REPLICATION_PRESENTBoth arms have biological replicationPassed

drug: 6 samples; vehicle: 6 samples.

Observed overlap

Contrast arms by Batch

Every column should contain evidence from both arms when this factor must be adjusted.

Sample counts for each contrast arm and batch level.
Armbatch_1batch_2
vehicle60
drug06
Recommended modelFormula withheld

DEfensible will not generate analysis code for a design that cannot support the claim.

03
Reproducible handoff

Export the decision, not just the answer.

Built for scientific trust

Interpretation where needed. Proof where possible.

DEfensible separates semantic reasoning from statistical verification so every claim has the right kind of evidence.

01 · AI interprets

Messy labels become explicit intent.

GPT‑5.6 maps free text and metadata into factors, arms, subsets, and evidence—while surfacing uncertainty instead of hiding it.

02 · Code verifies

Math decides whether the claim is estimable.

Replication, overlap, pairing, confounding, rank, and residual degrees of freedom are checked by deterministic, tested code.

03 · Humans decide

Every assumption remains inspectable.

Researchers can correct normalized factors, review exact source cells, and export a transparent record for expert review.

The problem

Code can run successfully and still support the wrong conclusion.

“Treatment and batch encode the same partition of samples. No statistical model can distinguish their effects in this dataset.”

DEfensible catches that failure before researchers spend hours on an analysis—or carry an invalid comparison into a figure, manuscript, or decision.