Skip to content

Instantly share code, notes, and snippets.

View sarthakbagaria's full-sized avatar

Sarthak Bagaria sarthakbagaria

View GitHub Profile
@sarthakbagaria
sarthakbagaria / machine-learning-geometry.py
Created December 21, 2025 09:44
A script to analyze the geometry of model training using singular learning theory.
# python 3.12
# pip install torch devinterp matplotlib scikit-learn
import torch
import torch.nn as nn
from torch.utils.data import DataLoader, TensorDataset
from devinterp.slt.callback import SamplerCallback
from devinterp.slt.llc import LLCEstimator
from devinterp.slt.sampler import sample
from devinterp.optim import SGLD
@sarthakbagaria
sarthakbagaria / utxo-blockchain.hs
Created July 28, 2018 18:27
A simple UTxO based blockchain ledger implementation with formally verified invariants.
#!/usr/bin/env stack
-- stack --resolver lts-11.6 script --package containers
module Blockchain where
import Data.Set (Set)
import qualified Data.Set as Set
-- refining just to get measures from data constructors
{-@ data Tx = Tx { tI :: Set Inp, tO :: [Out] } @-}
@sarthakbagaria
sarthakbagaria / distributed-computing.hs
Created July 22, 2018 19:36
A script to demonstrate distributed computing using Cloud Haskell. Each node sends a randomly generated number to every node (including itself), and at the end each node aggregates all the messages it received. Install Haskell 'stack' before running this script. First spin up some slave (messaging) nodes using 'distributed-computing.hs --host-ra…
#!/usr/bin/env stack
{- stack
script
--resolver lts-11.17
--package distributed-process
--package network-transport-tcp
--package distributed-process-simplelocalnet
--package pqueue
--package options
--package random