A lab building software for mathematics and interpretable machine learning.
KodamaSEC was founded on a simple premise: advanced algorithms and machine learning systems should be understandable, not just performant. We design methods for large-scale mathematical and numerical problems, and build machine learning models whose behavior can be examined and explained rather than treated as a black box. Concretely, results are judged on correctness first — exact arithmetic and, where possible, a machine-checked proof — and only then on speed.
Our work spans mathematical optimization, numerical computing, and applied machine learning research, with an emphasis on efficiency, reproducibility, and transparency at every stage. Where a result depends on a mathematical proof, we formally verify it using the Lean 4 theorem prover and its Mathlib library, so correctness does not rest on manual review alone — what that verification actually looks like, tier by tier, is on Methodology.
We also look ahead to concerns that will define the next decade of computing: cryptography that remains secure once large-scale quantum computers exist, and quantum-inspired algorithms that bring ideas from quantum computing to hardware available today.
The software is the instrument, not the product. We write a good deal of it, but it is not what we publish. The distinction is the same one an observatory makes: the telescope is built with great care and it is not the finding. Ours is an instrument for mathematics, we point it at a problem, and what appears on this site is its output — a result, a refutation, a limit we ran into — alongside enough of the method that you can disagree with it. Judge the output. The instrument is only interesting insofar as you have reason to trust what came out of it, which is why every finding here says how far it was verified and by what.
In spirit this is closer to a small independent institute than to a typical company: a private company that publishes its research openly, and builds instruments made of mathematics and software rather than products.
Builds KodamaSEC’s research and web tooling, and works as an independent researcher on the numerical and machine-learning side. Background in cybersecurity, including CISO-level work, and over 10 years of demonstrable professional experience — though the actual first line of code goes back further, to age 11, taught by an older brother who has since moved on from programming himself. Joel kept going. Born in 1991, a native of Tenerife, raised on the island of La Gomera, Canary Islands, Spain.
Mathematics here is a genuine hobby, not a credential: approached with the same curiosity an amateur astronomer brings to the night sky, not a research pedigree — the load-bearing expertise is in software development and security. Outside KodamaSEC: electronics projects and chess.
Built with AI coding assistants throughout, and disclosed as such. Nothing on this site has been peer-reviewed yet — a result marked Lean-checked is machine-verified, which is real and strong, but it isn't the same thing as review by other mathematicians. The author's own position: both the software and the results still need more outside calibration before either should be taken as final, and publishing this openly is meant to invite exactly that scrutiny, not avoid it.
Background
History
The path here started somewhere else. While working at a company in the education sector, Joel was promoted from team lead into security — eventually CISO — and had to learn, hands-on, how every phase of building an application actually connects, security most of all. That wasn't training taken in advance; it was a role that demanded it, so the study happened on the job.
Along the way he found a community of people on a cybersecurity study platform, competing together in CTF challenges. That's where the passion took hold: work that felt fair and genuinely recognized, a path toward a better future, and above all a growing curiosity about technology itself. Everyone in that group ended up finding their own path forward from there; Joel kept following his specifically toward security research. What became KodamaSEC is the result of a lot of persistence on that path — plenty of mistakes made, and made again, falling down and getting back up each time.
Standing position
What this will never be
KodamaSEC Labs Ltd will not sell cybersecurity products, services, consultancy, audits, training or studies — and will not enter any commercial relationship connected to cybersecurity. Not now, and not later. This is not a description of our current stage that a change of circumstances could quietly revise; it is the shape of the thing. Section 1 of the Legal Notice already commits to announcing publicly and re-dating that page if we ever take on commercial activity of any kind. This paragraph narrows that further: for cybersecurity specifically, there is no version of the future in which the answer changes.
What we do instead is publish. Findings, replications, corrections, and informative writing about risks that are still over the horizon — particularly where they only become visible when several disciplines are read together, which is most of the interesting ones. Publishing is free to read, free to check, and free to disagree with. Nobody is asked for anything.
Regulated public bodies in the United Kingdom and Spain are given access on request, as fast as we can arrange it — to the platforms, to the source of this website, and to the internal tooling behind the research. Not a redacted summary and not a demonstration: the working material. Write from an official address to oficial@kodamaseclabs.com. We would rather be read carefully by a regulator than admired at a distance.
Good faith, shown rather than asserted
Why there is so much proof here — and an open hand to Spain’s institutions
If this site reads as unusually heavy with verification and legal text, here is the reason, and it is not the one that might come to mind. It is not to look impressive, and it is not to talk anyone into trusting something that should not be trusted. It is the opposite. An independent developer, working alone, whose background touches security, does not get to be taken at their word — and should not be. So as far as we can manage it, nothing on this site rests on our word. That is the whole design, not a slogan: the code that runs this page is self-hosted and inspectable, with nothing loaded from a third party at run time — check your own Network tab; a full suite of automated checks runs before every deploy and the number that fail is published in the seal at the foot of every page; every research finding carries the level at which it is known, and a good share of them are refutations we kept on purpose so nobody walks those roads again, us included; and an integrity manifest lets anyone recompute the hashes of what we serve. That is what “not just talk” has to mean for someone in this position: not a promise of good faith, but a site deliberately built so you do not have to take the promise.
We supply cybersecurity to no one (see the Terms), and the engine behind the research is not published. If any of this work is ever taken in a security direction, it will be under the orientation of Spain’s own institutions — INCIBE first, and the relevant Spanish authorities — and not a step ahead of them. That is what “Spain is the first door” means in practice: oficial@kodamaseclabs.com.
A claim earns its level by being tried. Every result on this site is filed under a level — hint, verified computation, proof, proof accepted by a proof assistant, or a refutation kept on purpose — and the level is earned by trying to break the claim, not by liking it. Four famous claims, tried again here: Euler’s n²+n+41 gives primes for n = 0…39 and fails at 40 (it is 41²); Fermat’s 22k+1 is prime for k = 0…4 and fails at 5 (641 × 6700417, found by Euler in 1732); “2p−1 is prime for prime p” fails at p = 11 (23 × 89); and Pólya’s 1919 conjecture on the running sum of Liouville’s function holds as far as this page can check in a second — its first failure, at n = 906,150,257, is stated from the literature, not computed, which is the honest way to show a claim a small search cannot settle. Primality by trial division in exact integers, counterexamples factored on the spot, all recomputed in the build.
And the ordinary truth underneath all of it: this is one person doing the work carefully, and one person gets things wrong. When that happens the fix is to correct it in the open and say what changed, never to reword it into something that cannot be checked. Guidance from INCIBE, from the AEPD, or from any Spanish body willing to give it is not something we would merely accept — it is something we are asking for, because doing this properly matters more than looking as though we already had.
Why a company exists at all
A key to doors, not a business
The company earns nothing and is funded out of its director's own pocket. It exists because a surprising amount of research infrastructure is closed to a person and open to an organisation: computing platforms whose terms of service only contemplate a legal entity, instruments and datasets that will not accept an individual's registration, tooling priced and licensed for institutions. Several of those also want an organisational domain rather than a personal address before they will talk to you at all.
So the company is a key, and that is the whole of it. It grants no authority, certifies nothing, and is not evidence that anything published here is correct. A registered company that publishes a wrong result has published a wrong result.
Compliance
What the CEO has put on the record
What follows is not a summary written for this page. It is the founder’s statement of record, reproduced in full from the Legal Notice, where each commitment is binding. It is one file serving two pages, so it cannot say one thing here and something slightly different there.
“There is a British company with one pound of capital and dormant accounts, and there is one self-employed man in Tenerife who has paid for all of it out of his own pocket. That is the whole of it, and I would rather you read it here than work it out later.
If we ever take money, it will be through a Spanish company that does not exist yet, and it will be structured the Spanish and European way first — not because that is the easiest route, but because choosing your rules after the offer arrives is how people end up with rules they did not choose. We will bring good practice into the United Kingdom rather than go looking there for less of it. We will follow the strictest sanctions list in front of us and not the most convenient one, and whether a deal passes that test is not mine to decide — it is for people qualified to decide it, and my opinion is not the test.
We will not sell cybersecurity, and we will not be paid to carry a political message or to say anything against anyone’s religion or against any group of people. I have gone further than that in section 4A3: we will not supply anything to do with cybersecurity at all, to anyone, paid or unpaid. The one exception is a Spanish official body, and to one of those the answer is yes, including access to the code. Spain is the first door here, and I would rather write that down than have anyone wonder about it.
None of this is aimed at anybody. People who sell cybersecurity are doing legitimate work, and often necessary work. So are people who sell education — I worked in that sector, I owe it a great deal, and I would not have got here without it. Everything above is a limit on what this company sells. It is not a judgement on anyone who sells something else, and it should not be read as one. When I say I am for education that does not have to be paid for, I mean I would like there to be more of it freely available; I do not mean that charging for it is wrong. I first set this direction with KodamaSEC in mind. Where it goes from here is my own decision and nobody else’s, and I am not steering it against anyone.
On the rest: we take no side. Not in politics, not between governments, not between blocs. I am for people getting along and against war, I am for leaving nature and animals better than we found them, and I am for education that does not have to be bought. Those are not political positions and I will not let them be turned into any. If a thing is contentious, or sits outside the rules, we do not do it — and if it does not comply with Spanish rules, it does not advance until it does.
The company is in London because that is where it is registered, and where the law binds it, that law wins; I will not pretend otherwise. But the decisions are taken in Tenerife, and that is where they will stay.
We publish mathematics. That is a small thing to be, and it is enough.”
— KodamaSEC Labs Ltd, by its sole director. Statement of record, 8 August 2026.
And because a statement you cannot check against the clause it summarises is just a press release, here is which clause carries which promise:
Never sells cybersecurity — and supplies none of it to anyone, paid or unpaid — Legal Notice 4A3
One exception, in one direction: a Spanish official body, including access to the code — Legal Notice 4A3
No political message, no statement against any religion or any group of people, for any price — Legal Notice 4A2
Spanish rules first; nothing advances that does not comply with them — Legal Notice 4A4
Registered in London and bound by its law; decisions taken in Tenerife — Legal Notice 4A4
If commercial activity ever begins, it is announced publicly and this is re-dated — Legal Notice 1
If any of that turns out to be wrong, out of date, or stronger than the evidence behind it, write to @KodamaSecLabs and it gets corrected with a note saying what changed.
A personal note
How this actually gets made
This site would not be one percent of what it is without AI. On my own it would have taken decades — not a figure of speech, an estimate I stand behind. I would rather write that down than let anyone assume a lone developer produced all of it by hand. What the AI does not supply is the judgement: what is worth building, what counts as verified, when a result should be thrown away, and when a number is not good enough to publish. Those calls are mine, and so are the mistakes in them — several of which are written up on this site under my own name.
The programming is not new. The first line goes back to age eleven, and there are witnesses who thought that was a strange way for a child to spend an afternoon; I was called odd for it, fairly enough. Programming has fascinated me from the first day without a gap since.
The method is older than this lab, and it is the reason any of this exists. I like using the error as the pivot. Rather than treating a failure as something to suppress, take it as the input that adjusts the method, recursively, until the thing tunes itself — usually with algorithms nobody would call conventional, because the conventional one has already declined. It is the same instinct as pushing a change to production just to see how it lands on the front end, except the change is a piece of mathematics. Trying mathematics that way has always turned up something curious, and more often than not something genuinely fun.
An inventory
What this project is missing, and who could close it
Independent research that has not been reviewed is a claim, not a result. Rather than say that in the abstract, here is the specific list of skills the work needs in order to be sound, scored against how much of each actually exists today. Every score is anchored to something that has already happened here — a retraction, an error found after publication, a distinction stated wrongly, a stack of proved findings nobody has written up — and each row says which.
The bar is what exists; the empty part is what does not. The track’s width is how much the soundness of our published work depends on that skill, so a wide bar that is nearly empty is the loudest thing on this page, and is meant to be.
Nothing published here has been peer-reviewed. One paper was retracted, another carried two factual errors, and both were caught by us — after publication. Internal checking found them; internal checking is also what let them out.
Results are machine-checked, but several close by native_decide, which trusts the compiler rather than the kernel. That distinction was stated wrongly once and corrected on 5 August 2026. Closing them properly is specialist work.
Analytic number theory
needs level 5/5 · importance 4/5
15%
The Mertens and Redheffer material sits next to the Riemann hypothesis. Staying on the right side of that line is not something a careful amateur can guarantee alone.
Seven proved findings in this area are undeposited (ten until four were registered in the Lax Lean Archive on 18 September 2026), because writing them up to a standard that survives a specialist reader is a different skill from finding them.
Four proved findings, same reason — twelve until eight were registered in the Lax Lean Archive on 18 September 2026, which is the first time this block shrank.
Scientific writing and deposition
needs level 3/5 · importance 4/5
30%
Sixteen proved findings are not deposited anywhere (twenty-seven before the Lax Lean Archive records of 18 September 2026). A result nobody can cite is, for every practical purpose, a result nobody has.
Statistics and experimental design
needs level 4/5 · importance 3/5
20%
Much of the evidence here is computational. Deciding what a computation over a finite range does and does not license is a discipline of its own.
Research software engineering
needs level 4/5 · importance 3/5
80%
Reproducibility, provenance, and the test suite that runs before every deploy. Largely built — the gap is a second pair of hands, not a missing capability.
Security and platform engineering
needs level 4/5 · importance 3/5
90%
The one line where the founder’s professional background is the load-bearing expertise rather than a hobby.
Law, data protection and compliance
needs level 3/5 · importance 3/5
70%
ICO registration is current and verified against the regulator’s own register. Standing obligations do not stay done by themselves.
Accessibility and interface
needs level 3/5 · importance 2/5
55%
Measured, not assumed: real defects were found and fixed on 5 August 2026, including tap targets far too small on a phone. Fixable, and the kind of thing that stays fixed only if someone owns it.
The same figures as a table
Skills the project needs, scored 1–5, with the share currently covered.
Skill
Importance
Level needed
Covered
Independent referee & adversarial review
5
5
0%
Formal verification — Lean 4 and Mathlib
5
5
25%
Analytic number theory
4
5
15%
Arithmetic geometry — elliptic curves, BSD
4
5
10%
Complex and algebraic geometry — Hodge
4
5
10%
Scientific writing and deposition
4
3
30%
Statistics and experimental design
3
4
20%
Research software engineering
3
4
80%
Security and platform engineering
3
4
90%
Law, data protection and compliance
3
3
70%
Accessibility and interface
2
3
55%
Including the person writing this
Where the founder sits on that list
On the mathematics, at the bottom. No degree in it, no training in it, and gaps that are real and occasionally embarrassing — the sort that come from learning a subject in the order curiosity hands it to you rather than the order a syllabus would. Level 1 of 5 on every row above the writing line, and that is the honest number, not a modest one. Anyone on this list who does this professionally is better qualified in their field than the person who started the project, and the project is arranged on that assumption.
Which is why nothing here rests on anyone taking his word. Results are machine-checked or they are marked as not; the working is published so it can be broken; corrections go up the same day with their own dates. That is not modesty, it is the only arrangement under which an unqualified person can do this at all without misleading somebody.
What he does supply is the two rows near the bottom of the chart — the platform, the security, the tooling, the tests — and the part that is not a skill at all: paying for it, keeping it running, and putting the results where people with real judgement can reach them. Less a researcher than a bridge between people who have the criteria and the capability, and the digital groundwork that lets them use it. Some of what has been found here is frankly the arithmetic of persistence and luck rather than insight, and saying so costs nothing that was worth having.
Nothing on this page is a job advertisement, and nothing is being offered or asked for. It is an inventory, published because a gap you can see is worth more than one you have to guess at — and because anyone deciding how much weight to put on our results deserves to know exactly where they are thin.
In short
The five things we hold ourselves to
The full version of each — with the actual tools, tests, and pages behind the claim — is on Methodology. This is the quick-reference, not a second copy of the same essay: each line here links to where you can go check it yourself, not just read it again.
01TransparencyEvery tool runs entirely in your browser or against a documented API — check the intermediate steps yourself on The Notebook, not just the final verdict.
02EfficiencyNo floats where exactness matters (BigInt and fraction arithmetic throughout), no third-party CDN dependencies — KaTeX and Paper.js are self-hosted.
03Rigor26 findings closed by Lean 4’s kernel, and named as such only where the kernel really did the closing (68 are skipped where an optional dependency isn't installed — the count is the honest one, not the flattering one). Where a result can be formally verified, it is — the actual findings and Lean files are on Methodology, not just asserted here.
04ForesightWe track emerging concerns before they become urgent — post-quantum cryptography chief among them, see where that actually stands on Methodology.
05Open KnowledgeThe API behind these tools is fully documented (OpenAPI 3.1, open to read) even though it is closed to call since 7 August 2026 — the spec says so in its own description rather than leaving you to find out with a 403. And when something here turns out wrong, we correct it and say so.
We set no cookies of our own beyond what the site needs to work, and we run no advertising and no cross-site tracking. Our network provider measures page performance at the edge without cookies and without anything we can tie to a person; we get aggregate numbers, never a visitor. It also runs bot protection there, which is a security control and stays.
Cookies & local storage — the exact list, not a summary
Nothing here is hidden behind a settings toggle that doesn't actually do anything: if it's not in this table, we don't set it.
Name
Type
Set by
Purpose
Duration
ksec_theme
localStorage
This site
Remembers your light/dark mode choice
Until you clear it
ksec_cookie_ack_v1
localStorage
This site
Remembers you've seen this notice
Until you clear it
ksec_cookie_choice
localStorage
This site
Remembers whether you accepted or rejected, so we do not ask again
Until you clear it
ksec_build_notice_v1
localStorage
This site
Remembers that you collapsed the build notice in the corner
Until you clear it
ksec_notice_rev_v1
localStorage
This site
The site revision you last loaded, so a page left open across a deploy can tell you it is stale
Until you clear it
ksec_catalog_seen
localStorage
This site
How many entries the shared catalogue had the last time you looked at it, so the nav can tell you when it has grown and stay quiet when it has not. One number. It says nothing about you — only about how much of a public list you have already seen
Until you clear it
ksec_findings_seen
localStorage
This site
The measurements of Life objects this browser has already sent to the shared catalogue, so it does not send the same one twice. A short list of numbers such as p6:d0-0:n14 — period, displacement, population. It describes what the background drew, not you, and it never leaves your browser: what goes to the catalogue is the pattern itself, and the server measures it there
Until you clear it
ksec_notebook
localStorage
This site
The mascot’s research notebook on /mascot: the claims it tested in this browser, the seed, and the verdict, at most 40 entries. Never sent anywhere.
Until you clear it (there is a button on the page)
ksec_last_visit
localStorage
This site
When you were last here, so the mascot can tell you the site was rebuilt while you were away — and stay quiet when it was not. A timestamp, nothing else, and it never leaves your browser
Until you clear it
ksec_tool_uses_…
localStorage
This site
A per-tool daily-use counter for the free tools, one key per tool (a fair-use nudge, not an enforced limit, never sent anywhere) — set only if you actually use one of those tools
Resets daily; until you clear it
__cf_bm and similar
HTTP cookie
Cloudflare, Inc. (our security & CDN provider)
Distinguishes legitimate traffic from automated abuse — the same security gate described in Methodology
Session, typically under 30 minutes
That's the whole list. We don't set analytics, advertising, or tracking cookies of any kind — Accept and Reject in the banner currently do the same thing on this site specifically because there's no non-essential cookie for Reject to actually disable. That's not us dodging the question: under PECR/LSSI-CE, strictly necessary cookies (all we set) are exempt from consent entirely. We show both buttons anyway, and record which one you pressed, because that's the clearer and more honest thing to do even where it isn't strictly required. Full legal detail in Privacy & Cookie Policy.