Skip to content
Back to skills

Bidirectional Navigator

ASecurity

**Category**: Proof Navigation + Caching **Type**: Graph Index Structure **Language**: Julia **Status**: Production Ready **Version**: 1.0.0 **Date**: December 22, 2025

  • 61 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 6, 2026
researchgoperformance

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 6, 2026

npx -y skills add plurigrid/asi --skill bidirectional-navigator --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Bidirectional Navigator?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Bidirectional Navigator
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/plurigrid-bidirectional-navigator/badge)](https://www.skillsdirectory.com/skills/plurigrid-bidirectional-navigator)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
# Bidirectional Navigator

**Category**: Proof Navigation + Caching
**Type**: Graph Index Structure
**Language**: Julia
**Status**: Production Ready
**Version**: 1.0.0
**Date**: December 22, 2025

## Overview

Safe proof ↔ theorem navigation with non-backtracking constraint. Implements Friedman's B operator to enable linear homotopy type theory (LHoTT) resource-aware evaluation where proofs are consumed exactly once.

## Key Data Structures

```julia
struct Theorem
    id::Int
    name::String
end

struct Proof
    id::Int
    theorem_id::Int
    name::String
end

struct BidirectionalMap
    forward::Dict{Int, Int}     # Proof ID → Theorem ID
    backward::Dict{Int, Vector{Int}}  # Theorem ID → [Proof IDs]
    non_backtracking_ok::Bool
end
```

## Key Functions

- **`create_index(theorems, proofs)`**: Build bidirectional mapping
- **`evaluate_forward(index, proof_id)`**: O(1) proof → theorem lookup
- **`evaluate_backward(index, theorem_id)`**: Cached theorem → proofs lookup
- **`check_non_backtracking()`**: Verify B operator constraint (no u→v→u)
- **`linear_evaluation_possible()`**: Check LHoTT compatibility

## Mathematical Foundation

**Friedman's Non-Backtracking Operator (B)**
```
No u→v→u cycles ⟺ Linear resource-aware evaluation possible
```

Enables:
- Automatic proof consumption tracking
- Linear type system integration (LHoTT)
- Memory-efficient navigation (no revisits)

## Usage

```julia
using BidirectionalIndex

# Create index
index = create_index(theorems, proofs)

# Forward navigation (Proof → Theorem)
theorem_id = evaluate_forward(index, proof_42)

# Backward navigation (Theorem → Proofs)
related_proofs = evaluate_backward(index, theorem_5)

# Verify constraints
if check_non_backtracking(index)
    println("✓ B operator satisfied, linear evaluation ok")
end
```

## Integration Points

- Agent-based proof discovery with caching
- Linear homotopy type theory resource tracking
- Efficient theorem-proof lookup in large catalogs

## Performance

- Index creation: < 0.1 seconds
- Forward lookup: O(1)
- Backward lookup: O(1) cached after first access
- Scalable to 5,652+ theorems

## References

- Friedman (2008): Non-backtracking operator theory
- Linear Homotopy Type Theory (LHoTT) semantics

Files in this skill

  • SKILL.md2.2 KB
  • bidirectional_index.jl6.1 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…