1126 lines
51 KiB
Markdown
1126 lines
51 KiB
Markdown
|
|
# Tripartite Synapse — Pseudocode v5
|
|||
|
|
Energy and material flows explicit. Variables aggregated to minimum set.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Part 1 — Conventions
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
SCOPE = { DAY, NIGHT }
|
|||
|
|
CONTEXT = { AP, NOT_AP, bAP, NOT_bAP, CONTINUOUS }
|
|||
|
|
|
|||
|
|
Variable types:
|
|||
|
|
FIXED = externally imposed — does not change during simulation
|
|||
|
|
VAR = changes dynamically
|
|||
|
|
FAST_TRACE = accumulates and decays within DAY — never reaches NIGHT
|
|||
|
|
role: biases next behavior within same context
|
|||
|
|
TAG = set during DAY, decays slowly, survives to NIGHT
|
|||
|
|
role: gates structural commit in NIGHT
|
|||
|
|
for POST only: two phases — CANDIDATE (DAY) → STABLE (DAY) → NIGHT
|
|||
|
|
BUDGET = single energy variable per compartment
|
|||
|
|
all costs deducted here
|
|||
|
|
MATERIAL = single structural resource variable per compartment
|
|||
|
|
all material draws and returns here
|
|||
|
|
STRUCTURE = slow architectural variable
|
|||
|
|
READ during DAY, WRITTEN only in NIGHT
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Part 2 — Fixed Parameters
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
// Thresholds
|
|||
|
|
FIXED Ca_TAG_threshold // Ca²⁺ level sufficient to set post CANDIDATE tag
|
|||
|
|
FIXED Ca_HIGH // LTP-driving Ca²⁺ amplitude
|
|||
|
|
FIXED Ca_LOW // LTD-driving Ca²⁺ amplitude
|
|||
|
|
FIXED spillover_threshold // cleft saturation threshold for mGluR activation
|
|||
|
|
FIXED eligibility_threshold // minimum fast_trace to be taggable (all components)
|
|||
|
|
FIXED dopamine_threshold // minimum dopamine for tag stabilization
|
|||
|
|
FIXED tagging_threshold // minimum possible_tagging for tag accumulation
|
|||
|
|
FIXED tag_expiry_threshold // minimum tag to survive to NIGHT commit
|
|||
|
|
FIXED homeostatic_ceiling // max soma firing rate before global downscale
|
|||
|
|
FIXED disuse_threshold // silence duration before passive depotentiation
|
|||
|
|
FIXED recycling_fraction // fraction of material recovered after LTD dismantling
|
|||
|
|
|
|||
|
|
// External signals — organism level
|
|||
|
|
FIXED dopamine_level // VTA broadcast — reward/save signal
|
|||
|
|
FIXED NE_level // locus coeruleus — arousal/gain
|
|||
|
|
FIXED ACh_level // basal forebrain — attention/threshold
|
|||
|
|
|
|||
|
|
// Physical constraints
|
|||
|
|
FIXED vascular_glucose_supply // hard energy ceiling — astrocyte root
|
|||
|
|
FIXED branch_geometry // dendritic topology — affects bAP decay
|
|||
|
|
FIXED Ca_cooperativity_n // Hill coefficient for Ca²⁺-driven NT release (~3-4)
|
|||
|
|
FIXED Ca_half_max_K // half-maximal Ca²⁺ for NT release
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Part 3 — Energy and Material Declarations
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
// ── ENERGY: one budget per compartment ────────────────────────────────
|
|||
|
|
|
|||
|
|
VAR astro_budget // ROOT energy variable for synaptic operations
|
|||
|
|
// SOURCE: vascular_glucose_supply → glycolysis
|
|||
|
|
// COSTS: glutamate clearance (EAAT transport)
|
|||
|
|
// D-serine synthesis (serine racemase)
|
|||
|
|
// ECM secretion (Glypicans, Thrombospondins)
|
|||
|
|
// process motility (cytoskeletal remodeling)
|
|||
|
|
// lactate production (exported to pre, post, dend)
|
|||
|
|
// (simplifies: astro_ATP_budget + all enzyme running costs)
|
|||
|
|
|
|||
|
|
VAR astro_lactate // fuel exported by astrocyte → feeds pre, post, dend
|
|||
|
|
// = min(glycolysis(vascular_glucose_supply), astro_budget × export_fraction)
|
|||
|
|
// hard cap: vascular_glucose_supply (FIXED)
|
|||
|
|
|
|||
|
|
VAR pre_budget // bouton energy
|
|||
|
|
// SOURCE: astro_lactate (primary) — via perisynaptic delivery
|
|||
|
|
// COSTS: VGCC opening + vesicle fusion + VATPase refill
|
|||
|
|
// active zone maintenance
|
|||
|
|
// (simplifies: bouton_ATP + VATPase_running_cost)
|
|||
|
|
|
|||
|
|
VAR post_budget // spine energy
|
|||
|
|
// SOURCE: astro_lactate (primary) — via perisynaptic delivery
|
|||
|
|
// COSTS: NaK pump membrane reset
|
|||
|
|
// AMPA receptor lateral diffusion + recycling
|
|||
|
|
// actin remodeling for transient spine changes
|
|||
|
|
// NMDA current handling
|
|||
|
|
// (simplifies: spine_ATP + NaK_ATPase_cost + actin_cycling_cost)
|
|||
|
|
|
|||
|
|
VAR dend_budget // branch energy
|
|||
|
|
// SOURCE: astro_lactate (primary) + soma organelle delivery (minor)
|
|||
|
|
// COSTS: bAP propagation along branch
|
|||
|
|
// local mRNA translation
|
|||
|
|
// protein and organelle transport to spines
|
|||
|
|
// branch calcium handling
|
|||
|
|
// (simplifies: dend_mitochondria_ATP + local_translation_cost)
|
|||
|
|
|
|||
|
|
VAR soma_budget // somatic energy
|
|||
|
|
// SOURCE: own mitochondria (self-fueled — not from astrocyte)
|
|||
|
|
// COSTS: AP generation (Na⁺/K⁺ currents)
|
|||
|
|
// CREB transcription
|
|||
|
|
// protein synthesis machinery
|
|||
|
|
// organelle biogenesis
|
|||
|
|
// shipping to dend and axon
|
|||
|
|
// (simplifies: soma_ATP + synthesis_running_cost)
|
|||
|
|
|
|||
|
|
VAR axon_budget // axonal energy
|
|||
|
|
// SOURCE: soma_budget (primary) + astro_lactate along shaft (minor)
|
|||
|
|
// COSTS: AP propagation at each node of Ranvier
|
|||
|
|
// anterograde motor protein transport
|
|||
|
|
// myelin maintenance
|
|||
|
|
// (simplifies: axon_ATP + transport_running_cost)
|
|||
|
|
|
|||
|
|
// ── MATERIAL: one material variable per compartment ───────────────────
|
|||
|
|
|
|||
|
|
VAR astro_material // astrosynaptic structural components
|
|||
|
|
// SOURCE: astrocyte cell body synthesis
|
|||
|
|
// CONTAINS: EAAT transporter proteins
|
|||
|
|
// serine racemase enzyme
|
|||
|
|
// ECM proteins (Glypicans, Thrombospondins)
|
|||
|
|
// process cytoskeleton components
|
|||
|
|
// D-serine precursor (serine)
|
|||
|
|
// COSTS: drawn by DAY D-serine release (serine consumed)
|
|||
|
|
// drawn by NIGHT ECM secretion and process remodeling
|
|||
|
|
// (simplifies: astro_ECM_pool + racemase_cap + EAAT_pool
|
|||
|
|
// + process_extensions + D_serine_precursor)
|
|||
|
|
|
|||
|
|
VAR pre_material // presynaptic bouton structural components
|
|||
|
|
// SOURCE: soma_material via axon transport (anterograde)
|
|||
|
|
// CONTAINS: RIM, Munc13 (AZ scaffold)
|
|||
|
|
// VGCC subunits
|
|||
|
|
// vesicle membrane proteins
|
|||
|
|
// synaptotagmin, SNARE proteins
|
|||
|
|
// COSTS: drawn by NIGHT active zone expansion
|
|||
|
|
// RETURNS: to shared axonal pool after LTD dismantling
|
|||
|
|
// (simplifies: axon_vesicle_protein_pool + AZ_scaffold_proteins)
|
|||
|
|
|
|||
|
|
VAR post_material // postsynaptic spine structural components
|
|||
|
|
// SOURCE: dend_material (branch local pool + soma delivery)
|
|||
|
|
// CONTAINS: AMPA receptor subunits (GluA1, GluA2)
|
|||
|
|
// PSD scaffold proteins (PSD-95, SHANK)
|
|||
|
|
// actin monomers + polymerization machinery
|
|||
|
|
// CaMKII
|
|||
|
|
// COSTS: drawn by NIGHT receptor anchoring + spine enlargement
|
|||
|
|
// RETURNS: to branch pool after LTD internalization
|
|||
|
|
// (simplifies: dend_receptor_reserve + dend_actin_machinery
|
|||
|
|
// + PSD_scaffold_pool)
|
|||
|
|
|
|||
|
|
VAR dend_material // dendritic branch structural and supply components
|
|||
|
|
// SOURCE: soma_material (shipped during DAY NOT_AP + NIGHT)
|
|||
|
|
// CONTAINS: plasticity proteins (Arc, Homer)
|
|||
|
|
// mRNA pool (Arc mRNA, BDNF mRNA)
|
|||
|
|
// AMPA receptor subunits (in transit to spines)
|
|||
|
|
// organelles (mitochondria for local energy)
|
|||
|
|
// COSTS: drawn by local translation (mRNA consumed)
|
|||
|
|
// drawn by spine delivery (post_material replenishment)
|
|||
|
|
// drawn by NIGHT branch structural expansion
|
|||
|
|
// (simplifies: dend_protein_flux + dend_mRNA_pool
|
|||
|
|
// + dend_organelle_store)
|
|||
|
|
|
|||
|
|
VAR soma_material // somatic production output
|
|||
|
|
// SOURCE: CREB-driven synthesis (own ribosomes + nucleus)
|
|||
|
|
// CONTAINS: all structural proteins for downstream compartments
|
|||
|
|
// mRNA transcripts (Arc, BDNF, receptor subunits)
|
|||
|
|
// organelles (mitochondria, ribosomes)
|
|||
|
|
// COSTS: shipped to dend_material during DAY NOT_AP + NIGHT
|
|||
|
|
// shipped to axon for pre_material replenishment
|
|||
|
|
// depleted by soma's own NIGHT structural commit
|
|||
|
|
// (simplifies: soma_protein_synthesis_rate + soma_organelle_pool
|
|||
|
|
// + soma_receptor_synthesis_rate + mRNA_transcription)
|
|||
|
|
|
|||
|
|
VAR axon_material // axonal transport and structural components
|
|||
|
|
// SOURCE: soma_material (motor proteins, myelin components)
|
|||
|
|
// CONTAINS: kinesin/dynein motor proteins
|
|||
|
|
// microtubule components
|
|||
|
|
// myelin maintenance proteins
|
|||
|
|
// COSTS: drawn by NIGHT axon structural expansion
|
|||
|
|
// consumed continuously by anterograde transport
|
|||
|
|
// (simplifies: transport_machinery + myelination_proteins)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Part 4 — Structural Variables (Written Only in NIGHT)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
VAR pre_structure // active zone capacity
|
|||
|
|
// RRP_capacity ∝ pre_structure
|
|||
|
|
// VGCC_coupling ∝ pre_structure
|
|||
|
|
// refill_ceiling ∝ pre_structure
|
|||
|
|
// (simplifies: active_zone_size + VGCC_clustering + RRP_pool_capacity)
|
|||
|
|
|
|||
|
|
VAR post_structure // spine sensitivity capacity
|
|||
|
|
// anchoring_slots ∝ post_structure
|
|||
|
|
// spine_volume ∝ post_structure
|
|||
|
|
// local_reserve ∝ post_structure
|
|||
|
|
// (simplifies: AMPA_count_ceiling + spine_volume + receptor_reserve_ceiling)
|
|||
|
|
|
|||
|
|
VAR dend_structure // branch transmission and supply capacity
|
|||
|
|
// bAP_fidelity ∝ dend_structure × attenuation(position)
|
|||
|
|
// translation_ceiling ∝ dend_structure
|
|||
|
|
// transport_speed ∝ dend_structure
|
|||
|
|
// (simplifies: mitochondria_density + cytoskeletal_integrity
|
|||
|
|
// + mRNA_pool_ceiling)
|
|||
|
|
|
|||
|
|
VAR soma_structure // somatic output and production capacity
|
|||
|
|
// baseline_threshold ∝ 1/soma_structure
|
|||
|
|
// AP_reliability ∝ soma_structure
|
|||
|
|
// synthesis_ceiling ∝ soma_structure
|
|||
|
|
// (simplifies: ion_channel_density + ribosome_density
|
|||
|
|
// + CREB_machinery)
|
|||
|
|
|
|||
|
|
VAR axon_structure // axonal transmission and transport capacity
|
|||
|
|
// propagation_reliability ∝ axon_structure
|
|||
|
|
// transport_rate ∝ axon_structure
|
|||
|
|
// (simplifies: myelination_density + transport_machinery_capacity
|
|||
|
|
// + axonal_mitochondria_density)
|
|||
|
|
|
|||
|
|
VAR astro_structure // astrosynaptic environmental capacity
|
|||
|
|
// perisynaptic_distance ∝ 1/astro_structure
|
|||
|
|
// EAAT_density ∝ astro_structure
|
|||
|
|
// D_serine_tonic ∝ astro_structure
|
|||
|
|
// ECM_integrity ∝ astro_structure
|
|||
|
|
// SELF-REINFORCING in both directions:
|
|||
|
|
// LTP → astro_structure ↑ → signal more contained,
|
|||
|
|
// D-serine tonic ↑ → future LTP easier
|
|||
|
|
// LTD → astro_structure ↓ → signal dilutes,
|
|||
|
|
// D-serine tonic = 0 → future LTD easier
|
|||
|
|
// (simplifies: perisynaptic_distance + ECM_integrity
|
|||
|
|
// + D_serine_tonic_level + EAAT_density)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Part 5 — Trace Variables
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
// ── Fast traces: DAY only, decay automatically ────────────────────────
|
|||
|
|
|
|||
|
|
FAST_TRACE pre_fast_trace
|
|||
|
|
// += spike_Ca_influx() on each AP
|
|||
|
|
// *= decay(τ ≈ 100ms)
|
|||
|
|
// role: (1) biases NT flux in next AP context (residual Ca²⁺)
|
|||
|
|
// (2) eligibility condition for pre_possible_tagging
|
|||
|
|
// energy: no direct cost — Ca²⁺ dynamics are passive
|
|||
|
|
// material: no direct cost
|
|||
|
|
|
|||
|
|
FAST_TRACE post_fast_trace
|
|||
|
|
// += NMDA_Ca_influx × rise_speed() in NOT_bAP context
|
|||
|
|
// += bAP_Ca_boost() if CANDIDATE tag confirmed in bAP context
|
|||
|
|
// *= decay(τ ≈ tens of ms)
|
|||
|
|
// role: (1) encodes LTP vs LTD instruction (amplitude × speed)
|
|||
|
|
// (2) eligibility condition for post CANDIDATE tag
|
|||
|
|
// energy cost: post_budget -= NMDA_current_cost
|
|||
|
|
// material: no direct cost
|
|||
|
|
|
|||
|
|
FAST_TRACE dend_fast_trace
|
|||
|
|
// += bAP_Ca_influx() + spine_Ca_spillover()
|
|||
|
|
// *= decay(τ ≈ 300ms)
|
|||
|
|
// role: (1) integrates branch co-activity
|
|||
|
|
// (2) eligibility for dend_possible_tagging
|
|||
|
|
// (3) gates local translation rate when dend_tag set
|
|||
|
|
// energy cost: dend_budget -= branch_Ca_handling_cost
|
|||
|
|
// material: no direct cost
|
|||
|
|
|
|||
|
|
FAST_TRACE soma_fast_trace
|
|||
|
|
// += nuclear_Ca_influx() on each somatic AP
|
|||
|
|
// *= decay(τ ≈ seconds)
|
|||
|
|
// role: (1) adaptation — raises AP_threshold with recent firing
|
|||
|
|
// (2) eligibility condition for soma CREB gate
|
|||
|
|
// energy cost: soma_budget -= AP_generation_cost
|
|||
|
|
// material: no direct cost
|
|||
|
|
|
|||
|
|
FAST_TRACE axon_fast_trace
|
|||
|
|
// += AP_propagation_load(input_freq) on each AP
|
|||
|
|
// *= decay(τ ≈ seconds)
|
|||
|
|
// role: (1) drives propagation failure at branch points under high freq
|
|||
|
|
// (2) eligibility for axon_possible_tagging
|
|||
|
|
// energy cost: axon_budget -= AP_propagation_cost
|
|||
|
|
// material: no direct cost
|
|||
|
|
|
|||
|
|
FAST_TRACE astro_fast_trace
|
|||
|
|
// += mGluR5_Ca_influx() when glutamate > spillover_threshold
|
|||
|
|
// *= decay(τ ≈ seconds)
|
|||
|
|
// role: (1) drives D-serine release proportional to magnitude
|
|||
|
|
// (2) eligibility for astro_possible_tagging
|
|||
|
|
// (3) triggers global lockdown when > OVERLOAD_threshold
|
|||
|
|
// energy cost: astro_budget -= D_serine_synthesis_cost
|
|||
|
|
// material cost: astro_material -= D_serine_precursor_cost
|
|||
|
|
|
|||
|
|
// ── Possible tagging: intermediate, decays over seconds–minutes ───────
|
|||
|
|
|
|||
|
|
VAR pre_possible_tagging // += pre_fast_trace when > eligibility_threshold
|
|||
|
|
// *= decay(τ ≈ seconds)
|
|||
|
|
VAR post_possible_tagging // += post_fast_trace when > Ca_TAG_threshold (bAP confirmed)
|
|||
|
|
// *= decay(τ ≈ minutes) — CANDIDATE lifetime
|
|||
|
|
VAR dend_possible_tagging // += dend_fast_trace when > eligibility_threshold
|
|||
|
|
// *= decay(τ ≈ seconds–minutes)
|
|||
|
|
VAR soma_possible_tagging // += soma_fast_trace when > eligibility_threshold
|
|||
|
|
// *= decay(τ ≈ seconds–minutes)
|
|||
|
|
VAR axon_possible_tagging // += axon_fast_trace when > eligibility_threshold
|
|||
|
|
// *= decay(τ ≈ seconds–minutes)
|
|||
|
|
VAR astro_possible_tagging // += astro_fast_trace when > eligibility_threshold
|
|||
|
|
// *= decay(τ ≈ seconds–minutes)
|
|||
|
|
|
|||
|
|
// ── Tags: slow, DAY→NIGHT bridge ──────────────────────────────────────
|
|||
|
|
|
|||
|
|
TAG pre_tag // += dopamine × pre_possible_tagging when both > threshold
|
|||
|
|
// *= decay(τ ≈ hours) — survives to NIGHT
|
|||
|
|
// gates: pre_structure expansion in NIGHT
|
|||
|
|
// energy cost: none — tag is a molecular state, not a process
|
|||
|
|
|
|||
|
|
TAG post_tag // TWO-PHASE for POST only:
|
|||
|
|
// CANDIDATE phase:
|
|||
|
|
// set when post_fast_trace > Ca_TAG_threshold AND bAP confirmed
|
|||
|
|
// decays within minutes if dopamine does not arrive
|
|||
|
|
// STABLE phase:
|
|||
|
|
// += dopamine × post_possible_tagging when both > threshold
|
|||
|
|
// *= decay(τ ≈ hours) — survives to NIGHT
|
|||
|
|
// gates: post_structure expansion in NIGHT
|
|||
|
|
// energy cost: post_budget -= PKA_phosphorylation_cost (minor)
|
|||
|
|
// material cost: none
|
|||
|
|
|
|||
|
|
TAG dend_tag // += dopamine × dend_possible_tagging when both > threshold
|
|||
|
|
// *= decay(τ ≈ hours)
|
|||
|
|
// gates: dend_structure expansion + local translation activation in NIGHT
|
|||
|
|
// energy cost: none
|
|||
|
|
|
|||
|
|
TAG soma_tag // += dopamine × soma_possible_tagging when both > threshold
|
|||
|
|
// *= decay(τ ≈ hours)
|
|||
|
|
// gates: soma_structure expansion + protein synthesis peak in NIGHT
|
|||
|
|
// energy cost: soma_budget -= CREB_phosphorylation_cost (minor)
|
|||
|
|
// material cost: none
|
|||
|
|
|
|||
|
|
TAG axon_tag // += dopamine × axon_possible_tagging when both > threshold
|
|||
|
|
// *= decay(τ ≈ hours)
|
|||
|
|
// gates: axon_structure expansion in NIGHT
|
|||
|
|
// energy cost: none
|
|||
|
|
|
|||
|
|
TAG astro_tag // += dopamine × astro_possible_tagging when both > threshold
|
|||
|
|
// *= decay(τ ≈ hours)
|
|||
|
|
// gates: astro_structure expansion (process retraction + ECM sealing) in NIGHT
|
|||
|
|
// energy cost: none
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# SCOPE: DAY
|
|||
|
|
Budgets consumed. Fast traces written and decay. Tags set but not cleared.
|
|||
|
|
Structures READ only.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## PRE | CONTEXT: AP
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope DAY | context AP:
|
|||
|
|
|
|||
|
|
// Energy gate — release requires ATP
|
|||
|
|
if pre_budget < AP_release_cost:
|
|||
|
|
suppress(NT_flux)
|
|||
|
|
exit context
|
|||
|
|
// biological basis: ATP depletion → VGCC cannot open reliably
|
|||
|
|
|
|||
|
|
// Fast trace: residual Ca²⁺ deposit
|
|||
|
|
pre_fast_trace += spike_Ca_influx(input_freq)
|
|||
|
|
pre_fast_trace *= decay(τ = 100ms)
|
|||
|
|
pre_budget -= Ca_handling_cost
|
|||
|
|
// biological basis: Ca²⁺ enters via VGCCs, pumped out by PMCA/NCX
|
|||
|
|
|
|||
|
|
// NT flux: continuous release while RRP has content
|
|||
|
|
// Ca_drive: Hill function — cooperative Ca²⁺ dependence of synaptotagmin
|
|||
|
|
Ca_drive = pre_fast_trace^Ca_cooperativity_n /
|
|||
|
|
(Ca_half_max_K^Ca_cooperativity_n + pre_fast_trace^Ca_cooperativity_n)
|
|||
|
|
|
|||
|
|
if RRP_level > 0:
|
|||
|
|
NT_flux = RRP_level × Ca_drive // proportional to pool × Ca²⁺
|
|||
|
|
glutamate += NT_flux × Δt // cleft concentration rises
|
|||
|
|
RRP_level -= NT_flux × Δt // pool depletes
|
|||
|
|
pre_budget -= NT_flux × vesicle_fusion_cost // ATP per vesicle equivalent
|
|||
|
|
// biological basis: SNARE-mediated vesicle fusion, each event costs ATP
|
|||
|
|
|
|||
|
|
// RRP refill from reserve — rate limited by pre_budget and pre_structure
|
|||
|
|
RRP_refill = min(refill_rate_constant, pre_structure.refill_ceiling)
|
|||
|
|
RRP_level += RRP_refill × Δt
|
|||
|
|
RRP_level = clamp(RRP_level, 0, pre_structure.RRP_capacity)
|
|||
|
|
pre_budget -= RRP_refill × VATPase_cost
|
|||
|
|
// biological basis: VATPase pumps refill vesicles with NT, costs ATP
|
|||
|
|
|
|||
|
|
// Overflow brake — mGluR2/3 Gi-mediated autoinhibition
|
|||
|
|
if glutamate > spillover_threshold:
|
|||
|
|
Ca_drive *= mGluR_brake_factor
|
|||
|
|
// biological basis: extrasynaptic glu activates mGluR2/3 → Gi →
|
|||
|
|
// adenylyl cyclase ↓ → cAMP ↓ → VGCC opening ↓
|
|||
|
|
|
|||
|
|
// Refuel from astrocyte lactate
|
|||
|
|
pre_budget += astro_lactate × pre_fraction
|
|||
|
|
// biological basis: lactate → pyruvate → TCA → ATP via bouton mitochondria
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## PRE | CONTEXT: NOT_AP
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope DAY | context NOT_AP:
|
|||
|
|
|
|||
|
|
// Fast trace decays — eligibility window closing
|
|||
|
|
pre_fast_trace *= decay(τ = 100ms)
|
|||
|
|
|
|||
|
|
// RRP refills during silence — STP recovery
|
|||
|
|
RRP_refill = min(refill_rate_constant, pre_structure.refill_ceiling)
|
|||
|
|
RRP_level += RRP_refill × Δt
|
|||
|
|
RRP_level = clamp(RRP_level, 0, pre_structure.RRP_capacity)
|
|||
|
|
pre_budget -= RRP_refill × VATPase_cost
|
|||
|
|
|
|||
|
|
// Possible tagging: graded accumulation while eligible
|
|||
|
|
if pre_fast_trace > eligibility_threshold:
|
|||
|
|
pre_possible_tagging += pre_fast_trace
|
|||
|
|
pre_possible_tagging *= decay(τ = seconds)
|
|||
|
|
|
|||
|
|
// Dopamine decays locally
|
|||
|
|
dopamine_local *= decay(τ = hundreds_of_ms)
|
|||
|
|
// biological basis: dopamine reuptake by DAT, enzymatic degradation (MAO, COMT)
|
|||
|
|
|
|||
|
|
// Tag: set only when BOTH local eligibility AND global validation coincide
|
|||
|
|
if dopamine_local > dopamine_threshold and
|
|||
|
|
pre_possible_tagging > tagging_threshold:
|
|||
|
|
pre_tag += dopamine_local × pre_possible_tagging
|
|||
|
|
pre_tag *= decay(τ = hours)
|
|||
|
|
// biological basis: PKA phosphorylation of AZ proteins stabilizes tag
|
|||
|
|
// requires both residual Ca²⁺ eligibility AND dopamine-driven PKA
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## POST | CONTEXT: NOT_bAP
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope DAY | context NOT_bAP:
|
|||
|
|
|
|||
|
|
// AMPA current — gated by post_structure (READ)
|
|||
|
|
// Occupancy: transient receptor insertion/removal from existing slots
|
|||
|
|
AMPA_current = glutamate × post_structure.sensitivity
|
|||
|
|
Vm += AMPA_current
|
|||
|
|
post_budget -= AMPA_current_cost
|
|||
|
|
// biological basis: AMPA receptor opening → Na⁺ influx → NaK pump cost
|
|||
|
|
|
|||
|
|
// NMDA gate: three-way coincidence
|
|||
|
|
// (1) sufficient depolarization (Mg²⁺ block ejected)
|
|||
|
|
// (2) D-serine from astrosynapse (co-agonist present)
|
|||
|
|
// (3) glutamate bound
|
|||
|
|
if Vm > Mg_eject_threshold and
|
|||
|
|
astro_D_serine > D_serine_threshold:
|
|||
|
|
Ca_influx = NMDA_Ca_influx(glutamate)
|
|||
|
|
post_fast_trace += Ca_influx × rise_speed(Ca_influx)
|
|||
|
|
post_budget -= NMDA_current_cost
|
|||
|
|
// biological basis: NMDA Ca²⁺ influx → CaMKII vs PP1 competition
|
|||
|
|
// fast rise → CaMKII wins → LTP instruction
|
|||
|
|
// slow rise → PP1 wins → LTD instruction
|
|||
|
|
|
|||
|
|
// CANDIDATE tag: set when Ca²⁺ crossed tagging threshold
|
|||
|
|
// This is the Hebbian anticipation — before bAP confirms
|
|||
|
|
if post_fast_trace > Ca_TAG_threshold:
|
|||
|
|
post_possible_tagging += post_fast_trace // graded — higher Ca²⁺ → more contribution
|
|||
|
|
post_possible_tagging *= decay(τ = minutes) // CANDIDATE lifetime — minutes
|
|||
|
|
// biological basis: early CaMKII activation creates labile tag
|
|||
|
|
// decays via phosphatase activity if not stabilized
|
|||
|
|
|
|||
|
|
// Fast trace decays
|
|||
|
|
post_fast_trace *= decay(τ = tens_of_ms)
|
|||
|
|
|
|||
|
|
// Refuel
|
|||
|
|
post_budget += astro_lactate × post_fraction
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## POST | CONTEXT: bAP
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope DAY | context bAP:
|
|||
|
|
|
|||
|
|
// bAP arrives — strength set by dend_structure.bAP_fidelity (READ)
|
|||
|
|
Vm += bAP_depolarization × dend_structure.bAP_fidelity
|
|||
|
|
post_budget -= bAP_reset_cost
|
|||
|
|
// biological basis: bAP Ca²⁺ entry via VDCCs in spine, NaK reset costs ATP
|
|||
|
|
|
|||
|
|
// Coincidence confirmation: bAP finds CANDIDATE already set
|
|||
|
|
if post_possible_tagging > Ca_TAG_threshold:
|
|||
|
|
post_fast_trace += bAP_Ca_boost() // trace amplified above Ca_HIGH
|
|||
|
|
// biological basis: bAP + prior NMDA Ca²⁺ → supralinear Ca²⁺ summation
|
|||
|
|
// this is the Hebbian coincidence — forward + backward signals
|
|||
|
|
|
|||
|
|
// else: bAP arrives but spine was not active — no amplification, no tag
|
|||
|
|
|
|||
|
|
// Dopamine decays locally
|
|||
|
|
dopamine_local *= decay(τ = hundreds_of_ms)
|
|||
|
|
|
|||
|
|
// STABLE tag: CANDIDATE stabilized by dopamine within window
|
|||
|
|
if dopamine_local > dopamine_threshold and
|
|||
|
|
post_possible_tagging > tagging_threshold:
|
|||
|
|
post_tag += dopamine_local × post_possible_tagging
|
|||
|
|
post_tag *= decay(τ = hours)
|
|||
|
|
post_budget -= PKA_phosphorylation_cost // minor ATP cost for PKA activity
|
|||
|
|
// biological basis: dopamine → D1R → PKA → GluA1-Ser845 phosphorylation
|
|||
|
|
// PKA also phosphorylates DARPP-32 → inhibits PP1
|
|||
|
|
// stabilizes tag against phosphatase-driven decay
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## DEND | CONTEXT: CONTINUOUS
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope DAY | context CONTINUOUS:
|
|||
|
|
|
|||
|
|
// Integrate spines upward toward soma
|
|||
|
|
branch_Vm = integrate(POST.Vm, all_spines_on_branch)
|
|||
|
|
|
|||
|
|
// Propagate bAP downward — fidelity set by dend_structure (READ)
|
|||
|
|
bAP_local = propagate_bAP(SOMA.AP_fired,
|
|||
|
|
dend_structure.bAP_fidelity,
|
|||
|
|
branch_geometry)
|
|||
|
|
dend_budget -= bAP_propagation_cost
|
|||
|
|
// biological basis: bAP propagation requires Na⁺ channel re-activation
|
|||
|
|
// costs ATP via NaK reset along branch length
|
|||
|
|
|
|||
|
|
// Fast trace: branch Ca²⁺ from bAP + spine spillover
|
|||
|
|
dend_fast_trace += bAP_Ca_influx(bAP_local)
|
|||
|
|
dend_fast_trace += spine_Ca_spillover(active_spines)
|
|||
|
|
dend_fast_trace *= decay(τ = 300ms)
|
|||
|
|
dend_budget -= branch_Ca_handling_cost
|
|||
|
|
// biological basis: Ca²⁺ enters via VDCCs along branch,
|
|||
|
|
// SERCA pump re-sequestration costs ATP
|
|||
|
|
|
|||
|
|
// Possible tagging: branch co-activity threshold
|
|||
|
|
if dend_fast_trace > eligibility_threshold:
|
|||
|
|
dend_possible_tagging += dend_fast_trace
|
|||
|
|
dend_possible_tagging *= decay(τ = seconds)
|
|||
|
|
|
|||
|
|
// Dopamine decays
|
|||
|
|
dopamine_local *= decay(τ = hundreds_of_ms)
|
|||
|
|
|
|||
|
|
// Tag
|
|||
|
|
if dopamine_local > dopamine_threshold and
|
|||
|
|
dend_possible_tagging > tagging_threshold:
|
|||
|
|
dend_tag += dopamine_local × dend_possible_tagging
|
|||
|
|
dend_tag *= decay(τ = hours)
|
|||
|
|
|
|||
|
|
// Local translation: activated when tag set, gated by dend_budget
|
|||
|
|
if dend_tag > tag_expiry_threshold and dend_budget > translation_cost:
|
|||
|
|
local_proteins = translate(dend_material.mRNA_pool,
|
|||
|
|
dend_fast_trace) // rate ∝ fast trace
|
|||
|
|
dend_material.mRNA_pool -= local_proteins × mRNA_cost
|
|||
|
|
post_material += local_proteins × delivery_fraction
|
|||
|
|
dend_budget -= translation_cost
|
|||
|
|
// biological basis: Arc mRNA + polyribosomes at branch
|
|||
|
|
// fast local protein supply for early structural changes
|
|||
|
|
// no soma wait required
|
|||
|
|
|
|||
|
|
// ACh modulates commit threshold globally
|
|||
|
|
commit_threshold *= (1 / (1 + ACh_level × ACh_gain))
|
|||
|
|
|
|||
|
|
// Branch maintenance cost
|
|||
|
|
dend_budget -= branch_maintenance_cost
|
|||
|
|
dend_budget += astro_lactate × dend_fraction
|
|||
|
|
// material: replenished by soma shipping during NOT_AP
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## SOMA | CONTEXT: AP
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope DAY | context AP:
|
|||
|
|
|
|||
|
|
// Integrate — fires when branch inputs cross threshold
|
|||
|
|
// Threshold modulated by fast trace (adaptation) and neuromodulators
|
|||
|
|
AP_threshold = soma_structure.baseline_threshold
|
|||
|
|
× (1 + adaptation_factor(soma_fast_trace)) // rises with recent firing
|
|||
|
|
× neuromod_factor(NE_level, ACh_level) // NE lowers, ACh sharpens
|
|||
|
|
× refractory_factor(time_since_last_AP) // hard block then graded recovery
|
|||
|
|
|
|||
|
|
if branch_Vm > AP_threshold:
|
|||
|
|
AP_fired = True
|
|||
|
|
soma_budget -= AP_generation_cost
|
|||
|
|
// biological basis: Na⁺/K⁺ currents for AP, NaK pump reset
|
|||
|
|
|
|||
|
|
// Fast trace: nuclear Ca²⁺ accumulation
|
|||
|
|
soma_fast_trace += nuclear_Ca_influx()
|
|||
|
|
soma_fast_trace *= decay(τ = seconds)
|
|||
|
|
// biological basis: L-type VGCC → nuclear Ca²⁺ → CaM kinase nuclear activation
|
|||
|
|
|
|||
|
|
// Refractory period
|
|||
|
|
refractory_timer = absolute_refractory_duration // ~2ms hard block
|
|||
|
|
|
|||
|
|
// Possible tagging
|
|||
|
|
if soma_fast_trace > eligibility_threshold:
|
|||
|
|
soma_possible_tagging += soma_fast_trace
|
|||
|
|
soma_possible_tagging *= decay(τ = seconds)
|
|||
|
|
|
|||
|
|
// Dopamine decays
|
|||
|
|
dopamine_local *= decay(τ = hundreds_of_ms)
|
|||
|
|
|
|||
|
|
// Tag: nuclear Ca²⁺ AND dopamine coincidence
|
|||
|
|
if dopamine_local > dopamine_threshold and
|
|||
|
|
soma_possible_tagging > tagging_threshold:
|
|||
|
|
soma_tag += dopamine_local × soma_possible_tagging
|
|||
|
|
soma_tag *= decay(τ = hours)
|
|||
|
|
soma_budget -= CREB_phosphorylation_cost
|
|||
|
|
// biological basis: nuclear Ca²⁺ + PKA → CREB phosphorylation
|
|||
|
|
// requires both activity (Ca²⁺) AND reward (dopamine/PKA)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## SOMA | CONTEXT: NOT_AP
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope DAY | context NOT_AP:
|
|||
|
|
|
|||
|
|
// Integrate dendritic inputs
|
|||
|
|
branch_Vm = integrate(DEND.branch_Vm, all_branches)
|
|||
|
|
|
|||
|
|
// Refractory timer counts down
|
|||
|
|
refractory_timer = max(0, refractory_timer - Δt)
|
|||
|
|
|
|||
|
|
// Fast trace decays — threshold returning to baseline
|
|||
|
|
soma_fast_trace *= decay(τ = seconds)
|
|||
|
|
|
|||
|
|
// Ship material to tagged branches — priority by tag magnitude
|
|||
|
|
for branch in branches_ranked_by(dend_tag):
|
|||
|
|
delivery = min(shipping_fraction × soma_material,
|
|||
|
|
soma_budget × shipping_cost_fraction)
|
|||
|
|
dend_material[branch] += delivery
|
|||
|
|
soma_material -= delivery
|
|||
|
|
soma_budget -= shipping_cost
|
|||
|
|
// biological basis: kinesin-driven anterograde transport of mRNA + proteins
|
|||
|
|
// tagged branches receive priority allocation
|
|||
|
|
|
|||
|
|
// Ship material to axon for bouton replenishment
|
|||
|
|
axon_delivery = min(axon_shipping_fraction × soma_material,
|
|||
|
|
soma_budget × axon_shipping_cost_fraction)
|
|||
|
|
axon_material += axon_delivery
|
|||
|
|
soma_material -= axon_delivery
|
|||
|
|
soma_budget -= axon_shipping_cost
|
|||
|
|
// biological basis: slow axonal transport — days to reach distal boutons
|
|||
|
|
|
|||
|
|
// Neuromodulator context: PKA broadcast amplifies all tagged component traces
|
|||
|
|
if dopamine_level > dopamine_threshold or NE_level > NE_threshold:
|
|||
|
|
for each component where possible_tagging > tagging_threshold:
|
|||
|
|
tag += dopamine_level × possible_tagging × PKA_amplifier
|
|||
|
|
// biological basis: dopamine → cAMP → PKA → phosphorylates targets
|
|||
|
|
// throughout neuron simultaneously
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## AXON | CONTEXT: CONTINUOUS
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope DAY | context CONTINUOUS:
|
|||
|
|
|
|||
|
|
// AP propagation — reliability set by axon_structure (READ)
|
|||
|
|
propagation_reliability = axon_structure.myelination
|
|||
|
|
× (1 - failure_rate(axon_fast_trace))
|
|||
|
|
// biological basis: high axon_fast_trace → Na⁺ channel inactivation at branch points
|
|||
|
|
// → some APs fail to reach distal boutons
|
|||
|
|
// → this is axonal STD (frequency-dependent filtering)
|
|||
|
|
|
|||
|
|
APs_delivered = AP_fired × propagation_reliability
|
|||
|
|
axon_budget -= AP_propagation_cost × APs_delivered
|
|||
|
|
|
|||
|
|
// Fast trace: propagation load
|
|||
|
|
axon_fast_trace += APs_delivered
|
|||
|
|
axon_fast_trace *= decay(τ = seconds)
|
|||
|
|
|
|||
|
|
// Anterograde transport — delivers pre_material to boutons
|
|||
|
|
transport_rate = min(axon_structure.transport_capacity,
|
|||
|
|
axon_budget × transport_fraction)
|
|||
|
|
pre_material += transport_rate × Δt // boutons receive material
|
|||
|
|
axon_material -= transport_rate × Δt // axon pool depletes
|
|||
|
|
axon_budget -= transport_cost × transport_rate × Δt
|
|||
|
|
// biological basis: kinesin moves cargo at ~1μm/s along microtubules
|
|||
|
|
// costs ATP per step (kinesin ATPase)
|
|||
|
|
|
|||
|
|
// Possible tagging
|
|||
|
|
if axon_fast_trace > eligibility_threshold:
|
|||
|
|
axon_possible_tagging += axon_fast_trace
|
|||
|
|
axon_possible_tagging *= decay(τ = seconds)
|
|||
|
|
|
|||
|
|
// Dopamine decays
|
|||
|
|
dopamine_local *= decay(τ = hundreds_of_ms)
|
|||
|
|
|
|||
|
|
// Tag
|
|||
|
|
if dopamine_local > dopamine_threshold and
|
|||
|
|
axon_possible_tagging > tagging_threshold:
|
|||
|
|
axon_tag += dopamine_local × axon_possible_tagging
|
|||
|
|
axon_tag *= decay(τ = hours)
|
|||
|
|
|
|||
|
|
// Refuel from soma budget + local astrocyte
|
|||
|
|
axon_budget += soma_budget × axon_fuel_fraction
|
|||
|
|
axon_budget += astro_lactate × axon_astro_fraction
|
|||
|
|
// biological basis: soma mitochondria supply axon proximally
|
|||
|
|
// local astrocytes supply along shaft distally
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ASTRO | CONTEXT: CONTINUOUS
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope DAY | context CONTINUOUS:
|
|||
|
|
|
|||
|
|
// ROOT energy production: glycolysis from vascular glucose
|
|||
|
|
astro_budget += glycolysis(vascular_glucose_supply) × Δt
|
|||
|
|
// hard cap: vascular_glucose_supply (FIXED) — cannot be exceeded
|
|||
|
|
// biological basis: glucose → lactate via glycolysis in astrocyte cytoplasm
|
|||
|
|
|
|||
|
|
// Lactate export to neuronal compartments
|
|||
|
|
astro_lactate = min(astro_budget × lactate_export_fraction,
|
|||
|
|
vascular_glucose_supply × max_export_fraction)
|
|||
|
|
astro_budget -= astro_lactate
|
|||
|
|
deliver(astro_lactate → pre_budget × pre_fraction,
|
|||
|
|
post_budget × post_fraction,
|
|||
|
|
dend_budget × dend_fraction,
|
|||
|
|
axon_budget × axon_fraction)
|
|||
|
|
// biological basis: lactate released into ECS → absorbed by MCT2 on neurons
|
|||
|
|
// neurons convert lactate → pyruvate → TCA → ATP
|
|||
|
|
|
|||
|
|
// Glutamate clearance — rate set by astro_structure (READ)
|
|||
|
|
clearance = astro_structure.EAAT_density × glutamate × Δt
|
|||
|
|
glutamate -= clearance
|
|||
|
|
astro_budget -= clearance × EAAT_ATP_cost
|
|||
|
|
// biological basis: EAAT cotransports 3 Na⁺ per glutamate → NaK pump cost
|
|||
|
|
|
|||
|
|
// Overflow detection and D-serine release
|
|||
|
|
if glutamate > spillover_threshold:
|
|||
|
|
astro_fast_trace += mGluR5_Ca_influx()
|
|||
|
|
// biological basis: spillover activates mGluR5 → Gq → PLC → IP3
|
|||
|
|
// → Ca²⁺ release from ER → Ca²⁺-dependent exocytosis
|
|||
|
|
|
|||
|
|
// D-serine release: proportional to fast trace, material + budget limited
|
|||
|
|
D_serine_released = min(proportional_to(astro_fast_trace),
|
|||
|
|
astro_material.D_serine_precursor,
|
|||
|
|
astro_budget × Ds_fraction)
|
|||
|
|
astro_material -= D_serine_released × precursor_cost
|
|||
|
|
astro_budget -= D_serine_released × synthesis_cost
|
|||
|
|
astro_D_serine += D_serine_released
|
|||
|
|
// biological basis: serine racemase converts L-serine → D-serine
|
|||
|
|
// costs ATP, consumes serine from astro_material
|
|||
|
|
|
|||
|
|
// Simultaneous presynaptic brake (cross-compartment, no astro budget cost)
|
|||
|
|
Ca_drive_pre *= mGluR_brake_factor
|
|||
|
|
// biological basis: spillover also activates mGluR2/3 on PRE → Gi →
|
|||
|
|
// suppresses VGCC — brakes release at source
|
|||
|
|
|
|||
|
|
// Possible tagging
|
|||
|
|
if astro_fast_trace > eligibility_threshold:
|
|||
|
|
astro_possible_tagging += astro_fast_trace
|
|||
|
|
astro_possible_tagging *= decay(τ = seconds)
|
|||
|
|
|
|||
|
|
// Dopamine decays
|
|||
|
|
dopamine_local *= decay(τ = hundreds_of_ms)
|
|||
|
|
|
|||
|
|
// Tag
|
|||
|
|
if dopamine_local > dopamine_threshold and
|
|||
|
|
astro_possible_tagging > tagging_threshold:
|
|||
|
|
astro_tag += dopamine_local × astro_possible_tagging
|
|||
|
|
astro_tag *= decay(τ = hours)
|
|||
|
|
|
|||
|
|
astro_fast_trace *= decay(τ = seconds)
|
|||
|
|
|
|||
|
|
// Global overload: circuit breaker
|
|||
|
|
if astro_fast_trace > OVERLOAD_threshold:
|
|||
|
|
trigger(shockwave_lockdown)
|
|||
|
|
// biological basis: global Ca²⁺ wave → GABA + ATP release
|
|||
|
|
// mass AMPA internalization, hyperpolarization
|
|||
|
|
|
|||
|
|
// Tonic D-serine baseline — set by astro_structure (READ)
|
|||
|
|
astro_D_serine += astro_structure.D_serine_tonic × Δt
|
|||
|
|
astro_budget -= astro_structure.D_serine_tonic × tonic_synthesis_cost
|
|||
|
|
astro_material -= astro_structure.D_serine_tonic × tonic_precursor_cost
|
|||
|
|
// biological basis: constitutive racemase activity maintains baseline
|
|||
|
|
// D-serine availability independent of overflow events
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Special Case — Shockwave Lockdown (any scope)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope DAY or NIGHT | context OVERLOAD:
|
|||
|
|
|
|||
|
|
// Emergency — bypasses budget gates
|
|||
|
|
// Biological basis: global astrocytic Ca²⁺ wave →
|
|||
|
|
// GABA release → hyperpolarization
|
|||
|
|
// ATP release → purinergic inhibition
|
|||
|
|
post_fast_trace = 0
|
|||
|
|
Vm = HYPERPOLARIZED
|
|||
|
|
AMPA_occupancy = mass_internalization() // returned to post_material reserve
|
|||
|
|
post_material += recovered_AMPA
|
|||
|
|
axon_fast_trace += overdrive_cluster() // VGCC clustering beneath AZ
|
|||
|
|
astro_budget -= emergency_cost // large deduction — territory depleted
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# SCOPE: NIGHT
|
|||
|
|
Structural variables WRITTEN. Budgets replenished. Tags evaluated and cleared.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Step 1 — Replenish Budgets and Material
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope NIGHT | step 1:
|
|||
|
|
|
|||
|
|
// Astrocyte replenishes first — it fuels everything
|
|||
|
|
astro_budget += overnight_glycolysis(vascular_glucose_supply) × Δt_night
|
|||
|
|
astro_material += astrocyte_cellbody_synthesis() × Δt_night
|
|||
|
|
// biological basis: astrocyte protein synthesis overnight
|
|||
|
|
// replenishes EAAT, racemase, ECM proteins, process cytoskeleton
|
|||
|
|
|
|||
|
|
// Soma replenishes from own mitochondria — self-fueled
|
|||
|
|
soma_budget += overnight_mitochondria_output() × Δt_night
|
|||
|
|
|
|||
|
|
// Soma material production peaks in NIGHT — driven by soma_tag magnitude
|
|||
|
|
soma_material += CREB_driven_synthesis(soma_tag) × Δt_night
|
|||
|
|
// biological basis: CREB → Arc, BDNF, GluA1, scaffold proteins
|
|||
|
|
// peaks during slow-wave sleep replay
|
|||
|
|
|
|||
|
|
// Soma ships material to downstream compartments
|
|||
|
|
dend_material += soma_material × dend_delivery_fraction
|
|||
|
|
axon_material += soma_material × axon_delivery_fraction
|
|||
|
|
soma_material -= (dend_delivery_fraction + axon_delivery_fraction) × soma_material
|
|||
|
|
|
|||
|
|
// Downstream budgets refilled from soma and astrocyte
|
|||
|
|
dend_budget += astro_lactate × dend_fraction
|
|||
|
|
+ soma_budget × soma_to_dend_fraction
|
|||
|
|
pre_budget += astro_lactate × pre_fraction
|
|||
|
|
post_budget += astro_lactate × post_fraction
|
|||
|
|
axon_budget += soma_budget × soma_to_axon_fraction
|
|||
|
|
+ astro_lactate × axon_fraction
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Step 2 — Structural Commits (Parallel, Independent per Compartment)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope NIGHT | step 2:
|
|||
|
|
|
|||
|
|
// Each compartment commits independently based on its own tag
|
|||
|
|
// No global AND gate — coherence emerges from shared DAY events
|
|||
|
|
// COHERENCE BONUS: if all tags SET simultaneously → amplified commit
|
|||
|
|
all_aligned = (pre_tag > tag_expiry_threshold and
|
|||
|
|
post_tag > tag_expiry_threshold and
|
|||
|
|
astro_tag > tag_expiry_threshold)
|
|||
|
|
coherence_bonus = all_aligned ? coherence_factor : 1.0
|
|||
|
|
|
|||
|
|
// ── PRE COMMIT ──────────────────────────────────────────────────────
|
|||
|
|
if pre_tag > tag_expiry_threshold:
|
|||
|
|
Δpre = min(AZ_expansion_cost,
|
|||
|
|
pre_material,
|
|||
|
|
pre_budget × pre_structural_fraction)
|
|||
|
|
pre_structure += Δpre × coherence_bonus // STRUCTURE WRITTEN
|
|||
|
|
pre_material -= Δpre // material consumed
|
|||
|
|
pre_budget -= Δpre × structural_ATP_cost
|
|||
|
|
if Δpre < AZ_expansion_cost:
|
|||
|
|
queue(pre_deficit → next NIGHT) // deficit deferred
|
|||
|
|
// biological basis: RIM + Munc13 incorporation → new docking slots
|
|||
|
|
// VGCC clustering → tighter Ca²⁺-release coupling
|
|||
|
|
// LTD: passive decay if maintenance not met (see step 3)
|
|||
|
|
|
|||
|
|
// ── POST COMMIT ─────────────────────────────────────────────────────
|
|||
|
|
if post_tag > tag_expiry_threshold:
|
|||
|
|
Δpost = min(AMPA_insertion_cost,
|
|||
|
|
post_material,
|
|||
|
|
post_budget × post_structural_fraction)
|
|||
|
|
post_structure += Δpost × coherence_bonus // STRUCTURE WRITTEN
|
|||
|
|
post_material -= Δpost // material consumed
|
|||
|
|
post_budget -= Δpost × structural_ATP_cost
|
|||
|
|
if Δpost < AMPA_insertion_cost:
|
|||
|
|
queue(post_deficit → next NIGHT)
|
|||
|
|
// biological basis: CaMKII anchors AMPA receptors into PSD scaffold
|
|||
|
|
// actin polymerization enlarges spine head
|
|||
|
|
// new anchoring slots created — not just slots filled
|
|||
|
|
|
|||
|
|
// ── DEND COMMIT ─────────────────────────────────────────────────────
|
|||
|
|
if dend_tag > tag_expiry_threshold:
|
|||
|
|
Δdend = min(branch_expansion_cost,
|
|||
|
|
dend_material,
|
|||
|
|
dend_budget × dend_structural_fraction)
|
|||
|
|
dend_structure += Δdend × coherence_bonus // STRUCTURE WRITTEN
|
|||
|
|
dend_material -= Δdend
|
|||
|
|
dend_budget -= Δdend × structural_ATP_cost
|
|||
|
|
if Δdend < branch_expansion_cost:
|
|||
|
|
queue(dend_deficit → next NIGHT)
|
|||
|
|
// biological basis: mitochondria incorporation → local ATP ceiling raised
|
|||
|
|
// cytoskeletal reinforcement → better bAP propagation
|
|||
|
|
// mRNA pool expanded → more local translation capacity
|
|||
|
|
|
|||
|
|
// ── SOMA COMMIT ─────────────────────────────────────────────────────
|
|||
|
|
if soma_tag > tag_expiry_threshold:
|
|||
|
|
Δsoma = min(soma_expansion_cost,
|
|||
|
|
soma_material,
|
|||
|
|
soma_budget × soma_structural_fraction)
|
|||
|
|
soma_structure += Δsoma // STRUCTURE WRITTEN
|
|||
|
|
soma_material -= Δsoma
|
|||
|
|
soma_budget -= Δsoma × structural_ATP_cost
|
|||
|
|
// biological basis: ion channel density increase at axon initial segment
|
|||
|
|
// ribosome biogenesis → synthesis ceiling raised
|
|||
|
|
// CREB machinery expansion
|
|||
|
|
|
|||
|
|
// ── AXON COMMIT ─────────────────────────────────────────────────────
|
|||
|
|
if axon_tag > tag_expiry_threshold:
|
|||
|
|
Δaxon = min(axon_expansion_cost,
|
|||
|
|
axon_material,
|
|||
|
|
axon_budget × axon_structural_fraction)
|
|||
|
|
axon_structure += Δaxon // STRUCTURE WRITTEN
|
|||
|
|
axon_material -= Δaxon
|
|||
|
|
axon_budget -= Δaxon × structural_ATP_cost
|
|||
|
|
if Δaxon < axon_expansion_cost:
|
|||
|
|
queue(axon_deficit → next NIGHT)
|
|||
|
|
// biological basis: myelination density increase
|
|||
|
|
// motor protein pool expansion
|
|||
|
|
// microtubule stabilization
|
|||
|
|
|
|||
|
|
// ── ASTRO COMMIT ────────────────────────────────────────────────────
|
|||
|
|
if astro_tag > tag_expiry_threshold:
|
|||
|
|
Δastro = min(process_retraction_cost,
|
|||
|
|
astro_material,
|
|||
|
|
astro_budget × astro_structural_fraction)
|
|||
|
|
astro_structure += Δastro × coherence_bonus // STRUCTURE WRITTEN
|
|||
|
|
astro_material -= Δastro // ECM proteins + cytoskeleton consumed
|
|||
|
|
astro_budget -= Δastro × structural_ATP_cost
|
|||
|
|
if Δastro < process_retraction_cost:
|
|||
|
|
queue(astro_deficit → next NIGHT)
|
|||
|
|
// biological basis: process retraction → perisynaptic_distance ↓
|
|||
|
|
// ECM secretion (Glypicans, Thrombospondins) → cleft sealed
|
|||
|
|
// racemase upregulation → D_serine_tonic ↑
|
|||
|
|
// EAAT density increase → clearance ceiling ↑
|
|||
|
|
// SELF-REINFORCING: astro_structure ↑ → future signals more contained
|
|||
|
|
// → future D-serine higher
|
|||
|
|
// → future LTP easier
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Step 3 — Passive Depotentiation (Resource Conservation)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope NIGHT | step 3:
|
|||
|
|
|
|||
|
|
// Potentiation is the primary drive.
|
|||
|
|
// Depotentiation is its shadow — a consequence of finite resources.
|
|||
|
|
// Structures decay at a baseline rate.
|
|||
|
|
// Decay is overcome only if maintenance allocation is sufficient.
|
|||
|
|
// Maintenance draws from what remains AFTER potentiation has taken its share.
|
|||
|
|
|
|||
|
|
remaining_material = total_material - material_consumed_by_potentiation
|
|||
|
|
remaining_budget = total_budget - budget_consumed_by_potentiation
|
|||
|
|
|
|||
|
|
maintenance_per_synapse = remaining_material / total_synapse_count
|
|||
|
|
|
|||
|
|
for each synapse:
|
|||
|
|
// Structural decay — passive, continuous
|
|||
|
|
pre_structure -= structural_decay_rate × Δt_night
|
|||
|
|
post_structure -= structural_decay_rate × Δt_night
|
|||
|
|
dend_structure -= structural_decay_rate × Δt_night
|
|||
|
|
astro_structure -= structural_decay_rate × Δt_night
|
|||
|
|
|
|||
|
|
// Maintenance allocation — overcomes decay if resources available
|
|||
|
|
if maintenance_per_synapse >= maintenance_cost:
|
|||
|
|
pre_structure += maintenance_pre
|
|||
|
|
post_structure += maintenance_post
|
|||
|
|
dend_structure += maintenance_dend
|
|||
|
|
astro_structure += maintenance_astro
|
|||
|
|
// decay fully compensated — structure stable
|
|||
|
|
|
|||
|
|
else:
|
|||
|
|
// maintenance_per_synapse < maintenance_cost
|
|||
|
|
// partial compensation only — structure drifts downward
|
|||
|
|
// THIS IS DEPOTENTIATION BY NEGLECT — no active signal required
|
|||
|
|
// the synapse is not told to weaken
|
|||
|
|
// it simply does not receive enough to stay where it is
|
|||
|
|
pre_structure += maintenance_per_synapse × pre_fraction
|
|||
|
|
post_structure += maintenance_per_synapse × post_fraction
|
|||
|
|
// net: structure slowly declines toward lower baseline
|
|||
|
|
|
|||
|
|
// LTD material recovery: dismantled proteins returned to pools
|
|||
|
|
// This enriches the remaining pool and partially benefits other synapses
|
|||
|
|
for each synapse where net_structure_change < 0:
|
|||
|
|
recovered = structure_loss × recycling_fraction
|
|||
|
|
pre_material += recovered × pre_fraction
|
|||
|
|
post_material += recovered × post_fraction
|
|||
|
|
astro_material += recovered × astro_fraction × recycling_fraction
|
|||
|
|
// biological basis: ubiquitin-proteasome degradation → amino acids recycled
|
|||
|
|
// internalized receptors → endosomal reserve
|
|||
|
|
// dismantled AZ proteins → axonal pool
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Step 4 — Homeostatic Scaling
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope NIGHT | step 4:
|
|||
|
|
|
|||
|
|
// If soma fired too much overall during DAY — global downscale
|
|||
|
|
if soma_tag > homeostatic_ceiling:
|
|||
|
|
scale_factor = homeostatic_ceiling / soma_tag
|
|||
|
|
for each synapse:
|
|||
|
|
post_structure *= scale_factor // STRUCTURE WRITTEN
|
|||
|
|
pre_structure *= scale_factor // STRUCTURE WRITTEN
|
|||
|
|
// biological basis: global AMPA downscaling during sleep
|
|||
|
|
// relative differences preserved — absolute excitability restored
|
|||
|
|
// material recovery: scaled-down proteins returned to soma_material
|
|||
|
|
soma_material += sum(structure_reduction) × recycling_fraction
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Step 5 — Clear All Traces
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
scope NIGHT | step 5:
|
|||
|
|
|
|||
|
|
// FAST_TRACEs: already decayed during DAY — confirm zero
|
|||
|
|
pre_fast_trace = 0
|
|||
|
|
post_fast_trace = 0
|
|||
|
|
dend_fast_trace = 0
|
|||
|
|
soma_fast_trace = 0
|
|||
|
|
axon_fast_trace = 0
|
|||
|
|
astro_fast_trace = 0
|
|||
|
|
|
|||
|
|
// POSSIBLE_TAGGING: decayed during DAY — confirm zero
|
|||
|
|
pre_possible_tagging = 0
|
|||
|
|
post_possible_tagging = 0
|
|||
|
|
dend_possible_tagging = 0
|
|||
|
|
soma_possible_tagging = 0
|
|||
|
|
axon_possible_tagging = 0
|
|||
|
|
astro_possible_tagging = 0
|
|||
|
|
|
|||
|
|
// TAGS: explicitly cleared after commit
|
|||
|
|
// Tags above expiry threshold carry forward to next NIGHT (multi-night consolidation)
|
|||
|
|
if pre_tag < tag_expiry_threshold: pre_tag = 0
|
|||
|
|
if post_tag < tag_expiry_threshold: post_tag = 0
|
|||
|
|
if dend_tag < tag_expiry_threshold: dend_tag = 0
|
|||
|
|
if soma_tag < tag_expiry_threshold: soma_tag = 0
|
|||
|
|
if axon_tag < tag_expiry_threshold: axon_tag = 0
|
|||
|
|
if astro_tag < tag_expiry_threshold: astro_tag = 0
|
|||
|
|
// Tags above threshold: partial commit ran, deficit queued,
|
|||
|
|
// remaining tag persists to next NIGHT for completion
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Summary of Energy and Material Relations
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
ENERGY FLOW:
|
|||
|
|
vascular_glucose_supply (FIXED)
|
|||
|
|
→ astro_budget (glycolysis)
|
|||
|
|
→ astro_lactate → pre_budget, post_budget, dend_budget, axon_budget
|
|||
|
|
→ soma_budget (own mitochondria — independent of astrocyte)
|
|||
|
|
→ axon_budget (partial)
|
|||
|
|
→ dend_budget (partial, via organelle delivery)
|
|||
|
|
|
|||
|
|
MATERIAL FLOW:
|
|||
|
|
soma (CREB synthesis)
|
|||
|
|
→ soma_material
|
|||
|
|
→ dend_material (shipping during DAY NOT_AP + NIGHT)
|
|||
|
|
→ post_material (local delivery to spines)
|
|||
|
|
→ axon_material (shipping during DAY NOT_AP + NIGHT)
|
|||
|
|
→ pre_material (anterograde transport to boutons)
|
|||
|
|
astrocyte cell body (local synthesis)
|
|||
|
|
→ astro_material
|
|||
|
|
→ D-serine (consumed in DAY)
|
|||
|
|
→ ECM proteins (consumed in NIGHT)
|
|||
|
|
→ process cytoskeleton (consumed in NIGHT)
|
|||
|
|
|
|||
|
|
RECOVERY FLOWS (LTD → returns material to pools):
|
|||
|
|
post LTD → AMPA receptors → post_material (local reserve)
|
|||
|
|
pre LTD → AZ proteins → pre_material (axonal pool)
|
|||
|
|
astro LTD → ECM fragments → astro_material (partial, recycling_fraction)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
# Flows
|
|||
|
|
|
|||
|
|
## Energy flow
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
VASCULAR SUPPLY
|
|||
|
|
→ ASTROCYTE CELL BODY
|
|||
|
|
glucose → lactate (glycolysis)
|
|||
|
|
→ astro_budget (local ATP for clearance, D-serine, ECM, process motility)
|
|||
|
|
→ lactate exported to:
|
|||
|
|
→ pre_budget (ATP for VGCC, vesicle fusion, VATPase)
|
|||
|
|
→ post_budget (ATP for NaK pump, AMPA trafficking, actin)
|
|||
|
|
→ dend_budget (ATP for bAP propagation, local translation)
|
|||
|
|
|
|||
|
|
→ SOMA
|
|||
|
|
soma has own mitochondria — partly self-fueled
|
|||
|
|
soma_budget (ATP for AP generation, CREB, protein synthesis, shipping)
|
|||
|
|
→ dend_budget top-up (organelle delivery)
|
|||
|
|
→ axon_budget top-up (transport machinery)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Material flow
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
SOMA
|
|||
|
|
protein synthesis (CREB-driven, peaks in NIGHT)
|
|||
|
|
→ soma_material (receptors, scaffold proteins, organelles, mRNA)
|
|||
|
|
→ dend_material (branch receives proteins + mRNA from soma)
|
|||
|
|
→ post_material (spine receives receptors + actin from branch)
|
|||
|
|
→ axon_material (boutons receive AZ proteins + VGCCs from soma via axon)
|
|||
|
|
→ pre_material (bouton active zone proteins)
|
|||
|
|
|
|||
|
|
ASTROSYNAPSE
|
|||
|
|
ECM proteins synthesized in astrocyte cell body
|
|||
|
|
→ astro_material (Glypicans, Thrombospondins, serine for D-serine)
|
|||
|
|
→ cleft environment (ECM sealing, D-serine availability)
|
|||
|
|
```
|