Tier 4

cta - Category Analysis

Category Analysis

Input: $ARGUMENTS (category name and list of guesses in that category)


Purpose

After /gg produces guesses organized by category, this procedure analyzes each category to determine which guesses apply to the specific user.

Principle: The system does the work. Don’t ask the user to verify - instead, generate verifiable implications and check them.


Step 1: Identify Category Type

Category TypeAnalysis Approach
Factual (current state)Generate observable implications, check for evidence
Causal (X causes Y)Check if mechanism is plausible, look for counterexamples
Predictive (future state)Identify leading indicators, check track record
Normative (should/shouldn’t)Surface underlying values, check for contradictions
Modal (possible/impossible)Test constraints, identify blockers
Intentional (wants/intends)Check consistency with stated goals and behavior
Constraint (limits)Verify constraint exists, check if absolute or flexible
Method (how to)Check prerequisites, resources, fit with preferences
Reason (why)Trace to deeper reasons, check if terminal or instrumental

Category type: [TYPE]


Step 2: For Each Guess, Generate Verification Tests

For each guess in the category:

GUESS: [the guess]
TYPE: [category type]
VERIFICATION APPROACH:
├── Observable implication 1: [if true, we'd expect to see X]
├── Observable implication 2: [if true, we'd expect to see Y]
├── Counter-evidence check: [if false, we'd expect to see Z]
└── Consistency check: [does this contradict other known facts?]

EVIDENCE AVAILABLE:
├── From user input: [what can be inferred]
├── From context: [what can be derived]
├── From defaults: [what is typical]
└── Unknown: [what we can't determine]

VERDICT: LIKELY / UNLIKELY / UNKNOWN / NEEDS_USER_INPUT
CONFIDENCE: HIGH / MEDIUM / LOW
DERIVATION: [D: from what evidence]

Group guesses that imply each other:

CLUSTER: [name]
├── If [guess A] → then likely [guess B, C]
├── If [guess D] → then unlikely [guess E, F]
└── Independent: [guesses that don't cluster]

This reduces the number of things to verify - verifying one can verify/eliminate many.


Step 4: Identify Discriminating Questions

Find questions where:

  • The answer would verify/eliminate multiple guesses
  • The answer is easily observable or statable
  • The system can provide options rather than open-ended
DISCRIMINATING QUESTION: [question]
├── If answer is A: verifies [guesses], eliminates [guesses]
├── If answer is B: verifies [guesses], eliminates [guesses]
└── If answer is C: verifies [guesses], eliminates [guesses]

OPTIONS TO PRESENT:
├── Option A: [concrete choice]
├── Option B: [concrete choice]
├── Option C: [concrete choice]
└── Other: [user can specify]

Step 5: Apply Category-Specific Analysis

For CONSTRAINT Categories

ConstraintExists?Absolute?Workaround?
[constraint 1]YES/NO/UNKNOWNYES/NO[if yes, what]
[constraint 2]YES/NO/UNKNOWNYES/NO[if yes, what]

For METHOD Categories

MethodPrerequisites Met?Resources Available?Fits Preferences?
[method 1]YES/NO/PARTIALYES/NO/PARTIALYES/NO/UNKNOWN
[method 2]YES/NO/PARTIALYES/NO/PARTIALYES/NO/UNKNOWN

Better option check: For each method the user hasn’t mentioned, check if it fits their preferences better than what they’re considering.

For REASON Categories

ReasonTerminal?Serves What?Consistent?
[reason 1]YES/NO[higher goal]YES/NO
[reason 2]YES/NO[higher goal]YES/NO

Trace each reason until hitting a terminal value or circularity.

For CAUSAL Categories

Causal ClaimMechanism?Evidence?Counterexamples?
[claim 1][how it works][supporting][contradicting]
[claim 2][how it works][supporting][contradicting]

For FACTUAL Categories

Factual ClaimObservable?Observed?Source?
[claim 1]YES/NOYES/NO/NA[O: source]
[claim 2]YES/NOYES/NO/NA[O: source]

For ERROR Categories (Pre-Mortem)

Error TypePlausible Here?Evidence For?Evidence Against?
[error 1]YES/NO[what suggests this error][what suggests not]
[error 2]YES/NO[what suggests this error][what suggests not]

Step 6: Generate Summary

## CATEGORY: [name]

### Verified Guesses (High Confidence)
[list with derivation markers]

### Likely Guesses (Medium Confidence)
[list with derivation markers]

### Unknown Guesses (Need Input)
[list with specific options to present]

### Eliminated Guesses (Low Probability)
[list with reasons for elimination]

### Clusters Identified
[list of guess clusters and their implications]

### Better Options Surfaced
[methods/approaches user may not have considered that fit their preferences]

Step 7: Preference Integration

If user preferences are known (from /pre):

GuessMatches Preference?Which Preference?Strength
[guess 1]YES/NO/PARTIAL[preference name]STRONG/WEAK
[guess 2]YES/NO/PARTIAL[preference name]STRONG/WEAK

Rank guesses by preference match.


Output Format

## CATEGORY ANALYSIS: [category name]

### Input
[list of guesses in this category]

### Analysis Type
[category type and analysis approach used]

### Results

VERIFIED (High Confidence):
1. [guess] [D: derivation]
2. [guess] [D: derivation]

LIKELY (Medium Confidence):
1. [guess] [D: derivation]

UNKNOWN (Need Input - Options Provided):
1. [guess]
   - If A: [implication]
   - If B: [implication]
   - If C: [implication]

ELIMINATED:
1. [guess] - [reason]

### Clusters
[cluster summaries]

### Better Options Identified
[options user may not have considered]

### Recommended Next
[which guess to verify first and how]

Execution Checklist

  • Category type identified
  • Each guess has verification tests
  • Clusters identified
  • Discriminating questions generated with options
  • Category-specific analysis applied
  • Summary generated
  • Better options surfaced

Next Procedure

For each UNKNOWN guess with options: → INVOKE: /pre to match options to user values

For better options identified: → INVOKE: /boc to compare against user’s current choice


Execute now: Analyze the category of guesses provided.