Skip to content

Instantly share code, notes, and snippets.

@tscholl2
tscholl2 / main.go
Created Aug 17, 2020
AWS lambda example in Go
View main.go
// Testrun with:
// go build *.go && docker run --rm -v "$PWD":/var/task lambci/lambda:go1.x main '{"prefix":"23727483927892"}'
// Deploy by:
// zip main.zip main
// upload main.zip to https://console.aws.amazon.com/lambda/home
package main
import (
"context"
@tscholl2
tscholl2 / LZW.js
Last active Aug 19, 2020
Some types of compression in js
View LZW.js
(() => {
const fcp = String.fromCodePoint;
const L = "length";
/**
* @param {Uint8Array} input
* @returns {Uint8Array}
*/
function compress(input) {
const codewords = [];
const dictionary = new Map();
View cm_method.sage
def cm_method(q,t):
"""
Given a prime power q and integer t with |t| <= 2sqrt(q),
returns an Elliptic curve over GF(q) with q + 1 - t points.
"""
n = q + 1 - t
d = t^2 - 4*q
K = QuadraticField(d)
j = K.hilbert_class_polynomial().any_root()
E = EllipticCurve_from_j(GF(q)(j))
View sha256.js
/**
* Given a sting s, return the SHA-256 digest of s
* (encoded as a UTF-16-LE byte array) in hex form.
* @param {string} s
* @returns {string}
*
* python -c 'import hashlib; print(hashlib.sha256("a🐦".encode("utf-16-le")).hexdigest())'
* 49f1ecba591ec4ae7a049570bd21b97dc77d42659f3fbe70a34a8f02ebacee17
*
* python -c 'import hashlib; print(hashlib.sha256("$€𐐷𤭢".encode("utf-16-le")).hexdigest())'
View linear-algebra.c
#include "linear-algebra.h"
#define mat_val(i, j) A[i * m + j]
#define swap_values(a, b) t = b, b = a, a = t
#define swap_rows(_i1, _i2) \
for (int k = 0; k < m; k++) \
swap_values(mat_val(_i1, k), mat_val(_i2, k));
int solve(Element *A, Element *b, int n, int m, Element *x)
{
View turing-machine.ts
const enum Direction {
L = 0,
R = 1,
}
const enum Alphabet {
A = 0,
B = 1,
}
type StateOutput = [
Alphabet, // write
View letter.tex
\documentclass[12pt]{letter}
\date{\today}
\signature{FROMWHO???}
\address{
FROMWHERE??? \\
{\tt CONTACTEMAIL???}
}
@tscholl2
tscholl2 / Curve25519.sage
Last active Oct 27, 2019
list of Certicom curves
View Curve25519.sage
# Curve25519
p = 2^255 - 19
N = 8*(2^252 + 27742317777372353535851937790883648493)
E = EllipticCurve(GF(p),[0,486662,0,1,0])
G = E.lift_x(9)
assert E.count_points() == N
assert G.order() == N/8
@tscholl2
tscholl2 / template.tex
Last active Jun 28, 2019
tex template
View template.tex
\documentclass{article}
\usepackage{amsmath,amssymb,amsthm,amsfonts}
\usepackage{xcolor}
\newcommand{\public}[1]{\textcolor[rgb]{0.024,0.408,0.024}{#1}}
\newcommand{\private}[1]{\textcolor[rgb]{0.661,0.035,0.035}{#1}}
\newcommand{\FF}{\mathbb{F}}
\newcommand{\QQ}{\mathbb{Q}}
\newcommand{\ZZ}{\mathbb{Z}}
@tscholl2
tscholl2 / index.html
Created Jan 14, 2019
mini app that turns latex commands into unicode
View index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Latex to Unicode</title>
<link
rel="stylesheet"
href="//fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic"
/>