This repository collects codes and Jupyter notebooks that illustrate how to use the framework of Kaido and Ponomarev (2025) to obtain the sharp testable implication of a potential outcome model. It contains the following files.
- graph_analysis_utils.py: A library containing Python functions to build/plot a graph, derive MISs, and check regularity
- Partial_Monotonicity.ipynb: demonstrates an application of the library to the partial monotonicity example
- Interference.ipynb: Derives sharp identifying restrictions for spillover effects in the empirical application
- ExposureMap.ipynb: Derives sharp identifying restrictions for exposure maps in the empirical application
- CessationLength.ipynb: Derives sharp identifying restrictions for cessation length hypotheses in the empirical application
- CessationLengthSage.ipynb: Checks the perfectness of graphs using SageMath used in the cessation length example