Video Presentation
Watch the visual explanation of berkeDet, meryemSign, and meryemPer:
Downloads
Research Paper (PDF)
Full paper with proofs, complexity analysis, and comparison table (Version 2)
Download Paper
Download Paper
Presentation (PDF)
Visual illustrations of meryemPer patterns for n = 2 through n = 9
Download Presentation
Download Presentation
Preprint Repositories
Quick Start (Python)
Copy this code, paste it into any Python environment (such as online-python.com), and run it. Full code with detailed comments is on the Algorithm page.
def meryemSign(n):
b = [1]
for e in range(1, n):
c = b[:]
for d in range(e):
if d % 2 == 0:
f = [-x for x in c]
else:
f = c[:]
b.extend(f)
return b
def meryemPer(n):
a = [[1]]
for b in range(2, n + 1):
c = list(range(1, b + 1))
d = []
for f in c:
g = [e for e in c if e != f]
for h in a:
j = [g[i - 1] for i in h]
d.append([f] + j)
a = d
return a
def berkeDet(matrix):
n = len(matrix)
signs = meryemSign(n)
perms = meryemPer(n)
det = 0
for sign, perm in zip(signs, perms):
product = 1
for i in range(n):
product *= matrix[i][perm[i] - 1]
det += sign * product
return det
# Try it!
A = [[6, 1, 1],
[4, -2, 5],
[2, 8, 7]]
print("Determinant:", berkeDet(A)) # Output: -306
Citation
If you use berkeDet in your work, please cite:
Gülmen, B., Gülmen, M., & Gülmen, Ö. (2026).
berkeDet: A Dual Iterative Algorithm for Exact Determinant
Computation via Block Replication and Index Mapping.
Zenodo. https://zenodo.org/records/19589519
Version History
- Version 2 (April 2026) — Strengthened meryemPer analysis with explicit comparison to naive (suffix sort) and optimized (Narayana Pandita) lexicographic generators. Added sort-free column to comparison table. Updated title.
- Version 1 (February 2026) — Initial release.