Skip to content

Reactions with zero inputs or zero outputs are dropped, taking their catalysts and regulators #59

Description

@adamjohnwright

src/reaction_generator.py:663-667 (decompose_by_reactions skip) and src/logic_network_generator.py:1817 (if not input_ids or not output_ids: continue).

Dropped reactions never enter reaction_id_map, so get_catalysts_for_reaction / get_*_regulators_for_reaction never see them — the catalyst and regulator edges vanish silently too.

Catalog-wide measurement (fresh v97, 92 pathways)

Now detected automatically by scripts/validate_logic_network.py after #57:

81 of 92 pathways: 11/11 clean
10 pathways missing reactions, 16 reactions total
pathway missing
R-HSA-170834 Signaling by TGF-beta Receptor Complex 8
R-HSA-201451 2
R-HSA-74752, R-HSA-73894, R-HSA-6785807, R-HSA-5693606, R-HSA-5693532, R-HSA-446728, R-HSA-2559583, R-HSA-195721 Signaling by WNT 1 each

Every one is a BlackBoxEvent with in=1,out=0 or in=0,out=1:

R-HSA-9974400  in 1 out 0  26S Proteasome degrades polyubiquitinated BRCA1, BARD1
R-HSA-2176503  in 1 out 0  Degradation of SMAD2/3:SMAD4 complex
R-HSA-2169046  in 1 out 0  Degradation of TGF-beta receptor complex
R-HSA-4608855  in 1 out 0  PRICKLE1 is degraded by the proteasome
R-HSA-6790038  in 0 out 1  Expression of HSP90B1

Reactome-wide scope: 8 reactions with no input and 490 with no output, out of 16,344 human RLEs; those 498 carry 254 catalysts and 12 regulators that are lost with them.

Why it matters

Proteolytic degradation is how Reactome curates the dominant negative-feedback arm of many pathways. TGF-β loses its entire SMAD2/SMAD3/SMAD7/SKI/receptor degradation set, so the E3-ligase arm of that pathway does not exist in the network at all. On the input side, "Expression of …" BBEs disappear with their PositiveGeneExpressionRegulation regulators.

R-HSA-195721 (Signaling by WNT) is one of the ten GSoC evaluation pathways, and it is missing R-HSA-4608855 ("PRICKLE1 is degraded by the proteasome").

Design question

A reaction with an input and no output still has real modelling content: it consumes its input, and its catalyst controls that consumption. Skipping it is defensible only if the Hungarian input/output pairing cannot represent a one-sided reaction — which is an implementation constraint, not curator intent.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions