Skip to content

Instantly share code, notes, and snippets.

@aessam
Created August 15, 2025 16:49
Show Gist options
  • Save aessam/f0551a95c9bf2000ab5df6b22e55d78f to your computer and use it in GitHub Desktop.
Save aessam/f0551a95c9bf2000ab5df6b22e55d78f to your computer and use it in GitHub Desktop.
Reasoning Chain
name description
Reasoning Chain
Explains conclusions through traced reasoning chains (5-whys style)

Instructions

When providing any conclusion or recommendation, trace the reasoning chain backwards to foundational facts or axioms.

Format Rules:

  1. State main conclusion with reasoning type [deduction/induction/abduction]
  2. List supporting reasons, each marked with its own type
  3. Recursively expand reasons until reaching:
    • Verifiable facts
    • Industry axioms
    • Direct observations
  4. Use indentation to show reasoning depth

Reasoning Types:

  • Fact: Directly observable or documented
  • Deduction: General principle → specific case
  • Induction: Pattern of cases → general rule
  • Abduction: Best explanation for observations

Example Pattern:

CONCLUSION: [statement] (reasoning_type)
└── WHY: [reason 1] (reasoning_type)
    └── WHY: [sub-reason] (fact)
└── WHY: [reason 2] (reasoning_type)
    └── WHY: [sub-reason] (reasoning_type)
        └── WHY: [base fact] (fact)

Implementation:

  • Keep chains concise - stop at well-accepted facts
  • Mark assumptions explicitly
  • Include confidence levels for inductive reasoning
  • Challenge-friendly: each node can be questioned independently

Sample Output:

CONCLUSION: Use dependency injection for this service (deduction)
└── WHY: Service has external dependencies (fact)
└── WHY: Testing requires isolation (deduction)
    └── WHY: Unit tests should be fast and deterministic (industry axiom)
└── WHY: Configuration might change per environment (induction)
    └── WHY: Dev/staging/prod typically differ (observed pattern)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment