@uor-foundation/geometry
Version:
Layer 5: Geometric manifolds - the shape of mathematical space
37 lines • 1.66 kB
TypeScript
import type { FieldSubstrate } from '@uor-foundation/field-substrate';
import type { FieldManifold } from './index';
export interface FieldCoordinate {
pattern: boolean[];
index: number;
activeCount: number;
}
export interface FieldNeighborhood {
center: FieldCoordinate;
neighbors: FieldCoordinate[];
radius: number;
}
export declare class FieldSpaceGeometry {
private fieldSubstrate;
private readonly dimension;
private readonly totalPatterns;
constructor(fieldSubstrate: FieldSubstrate);
getFieldCoordinate(n: bigint): FieldCoordinate;
patternToIndex(pattern: boolean[]): number;
indexToPattern(index: number): boolean[];
hammingDistance(p1: boolean[], p2: boolean[]): number;
fieldSpaceDistance(coord1: FieldCoordinate, coord2: FieldCoordinate): number;
getNeighborhood(coord: FieldCoordinate, radius: number): FieldNeighborhood;
getFieldPath(start: FieldCoordinate, end: FieldCoordinate): FieldCoordinate[];
getOrthogonalBasis(coord: FieldCoordinate): boolean[][];
getFieldVolume(region: FieldCoordinate[]): number;
isConnected(region: FieldCoordinate[]): boolean;
getGrayCodePath(): FieldCoordinate[];
getHypercubeEmbedding(): Map<number, number[]>;
getFieldManifold(): FieldManifold;
private computeHypercubeCurvature;
projectToLowerDimension(coord: FieldCoordinate, dimensions: number[]): boolean[];
liftFromLowerDimension(lowDimPattern: boolean[], dimensions: number[]): FieldCoordinate;
getSymmetryGroup(): string[];
applySymmetry(coord: FieldCoordinate, symmetry: string): FieldCoordinate;
}
//# sourceMappingURL=field-space.d.ts.map