bug-bounty545
xss379
exploit255
google204
rce179
facebook161
writeup134
microsoft129
web3122
open-source91
csrf89
cve84
account-takeover78
apple75
browser71
sqli65
malware64
ai-agents63
ssrf56
tool46
privacy44
dos44
cloudflare43
oauth41
pentest41
privilege-escalation40
ctf40
lfi39
llm37
aws36
idor35
supply-chain35
opinion35
phishing33
react33
automation33
auth-bypass33
cors32
machine-learning32
clickjacking31
reverse-engineering31
infrastructure31
code-generation31
cloud30
node30
race-condition29
access-control27
wordpress25
subdomain-takeover25
postmessage24
0
2/10
This article explains thinnings as witness data structures that prove one list is a sublist of another, representing order-preserving mappings between lists as boolean vectors or bitvectors. The author demonstrates how thinnings encode de Bruijn index shift operations and can be composed as morphisms in a category, with practical implementations in Python and Prolog.
type-theory
dependent-types
proof-objects
witness-data
de-bruijn-indices
functional-programming
category-theory
subsequence-matching
logic-programming
prolog
data-structures
algorithms
bitvectors
Conor McBride
Philip Zucker
Chris Warbo
Agda
Python
Prolog
Scryer Prolog
maturin