On the Complexity of Identification in Linear Structural Causal Models

Julian Dörfler, Benito van der Zander, Markus Bläser, Maciej Liskiewicz
2/3/2026

No confident code implementation found for this paper.

Abstract

Learning the unknown causal parameters of a linear structural causal model is a fundamental task in causal analysis. The task, known as the problem of identification, asks to estimate the parameters of the model from a combination of assumptions on the graphical structure of the model and observational data, represented as a non-causal covariance matrix. In this paper, we give a new sound and complete algorithm for generic identification which runs in polynomial space. By standard simulation results, this algorithm has exponential running time which vastly improves the state-of-the-art double exponential time method using a Gr\"obner basis approach. The paper also presents evidence that parameter identification is computationally hard in general. In particular, we prove, that the task asking whether, for a given feasible correlation matrix, there are exactly one or two or more parameter sets explaining the observed matrix, is hard for $\forall R$, the co-class of the existential theory of the reals. In particular, this problem is $coNP$-hard. To our best knowledge, this is the first hardness result for some notion of identifiability.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{drfler2026complexity,
  title  = {On the Complexity of Identification in Linear Structural Causal Models},
  author = {Julian Dörfler and Benito van der Zander and Markus Bläser and Maciej Liskiewicz},
  year   = {2026},
  eprint = {2407.12528},
  archivePrefix = {arXiv},
  doi    = {10.48550/arXiv.2407.12528},
  url    = {https://arxiv.org/abs/2407.12528},
  journal = {NEURIPS 2024 2024}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2407.12528.svg)](https://codeofpaper.com/paper/2407.12528)

Discussion