Fa Structure¶
Overview¶
Fa is the core state container for SHA tokens. It holds cryptographic values used in modular exponentiation operations and pairing protocols.
- File:
include/fa.sol - License: Sharia
- Solidity: ^0.8.21
What This Means For Players¶
Plain English Summary: Fa is the internal state of your cryptographic keys. Each SHA token has a Fa structure that stores all the secret and public values used for cryptographic operations. It's like the internal circuitry of a lock.
Real-World Analogy: Think of Fa like the pins inside a door lock. Each pin (field) has a specific height (value), and when the right key is inserted, all the pins align correctly. The Fa stores all these "pin heights" that make your SHA token unique.
How It Affects Your Gameplay: - Behind the scenes - Players don't interact with Fa directly - Identity foundation - These values ultimately determine your unique cryptographic identity - Reaction fuel - Values like Charge, Chin, and Monopole are used in reaction calculations
Definition¶
struct Fa {
uint64 Base; // Base value for exponentiation
uint64 Secret; // Secret exponent
uint64 Signal; // Signal value
uint64 Channel; // Computed channel (Base^Signal mod MotzkinPrime)
uint64 Contour; // Contour from Avail operation
uint64 Pole; // Polarization value
uint64 Identity; // Identity parameter
uint64 Foundation; // Foundation from Conify
uint64 Element; // Element for reactions
uint64 Coordinate; // Conjugate coordinate
uint64 Charge; // Computed charge
uint64 Chin; // Chin value for reactions
uint64 Monopole; // Monopole state
}
Field Descriptions¶
| Field | Purpose | Set By |
|---|---|---|
| Base | Primary value for exponentiations | Seed(), Form() |
| Secret | Private exponent | Seed() |
| Signal | Public signal value | Seed() |
| Channel | Derived from Base^Signal | Tune() |
| Contour | Intermediate value | Avail() |
| Pole | Polarization result | Polarize() |
| Identity | Partner's identity | Conify(), Saturate() |
| Foundation | Base^Identity mod Prime | Conify() |
| Element | Combined charge element | Saturate() |
| Coordinate | Partner's pole value | Conjugate() |
| Charge | Computed from saturation | Saturate() |
| Chin | Used in reactions | Saturate() |
| Monopole | Final monopole state | Saturate() |
Lifecycle¶
1. Seed() - Initialize Base, Secret, Signal
2. Tune() - Compute Channel
3. Avail() - Set Contour
4. Form() - Transform Base, re-Tune
5. Polarize() - Compute Pole
6. Conjugate() - Set Coordinate from partner
7. Conify() - Set Identity, Foundation
8. Saturate() - Compute Charge, Chin, Element, Monopole
Mathematical Relationships¶
Channel = Base^Signal mod MotzkinPrime
Contour = Xi^Secret mod MotzkinPrime
Pole = Base^Secret mod MotzkinPrime
Foundation = Base^Identity mod MotzkinPrime
During Saturate:
Beta = Epsilon^Identity mod Prime
Rho = Theta^Identity mod Prime
Eta = Epsilon^Signal mod Prime
Charge = Rho + Eta
Chin = Beta + Eta
Element = Beta + Charge
Monopole = Chin^Identity mod Prime
Used By¶
Related Structures¶
- VMFa: Extended version with additional fields (Dynamo, Manifold, Ring, Barn, Tau, Eta, Kappa, Alpha, Nu)
- Faung: Container for Rod/Cone VMFa pairs
Contract Verification¶
| Property | Value |
|---|---|
| Keccak256 Hash | 0x66d1f7bcc4941ed09f9df1e7a97eeeeed584fe327a420d258dbb2e258c91cf85 |
| Source URL | https://raw.githubusercontent.com/busytoby/atropa_pulsechain/main/solidity/dysnomia/include/fa.sol |
| Hash Generated | 2026-02-08T00:29:08Z |