frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Open in hackernews

Cracovians: The Twisted Twins of Matrices

https://marcinciura.wordpress.com/2025/06/20/cracovians-the-twisted-twins-of-matrices/
35•mci•3h ago

Comments

kubb•3h ago
> However, the multiplication of a cracovian by another cracovian is defined differently: the result of multiplying an element from column i of the left cracovian by an element from column j of the right cracovian is a term of the sum in column i and row j of the result.

Am I the only one for whom this crucial explanation didn’t click? Admittedly, I might be stupid.

Wikipedia is a bit more understandable: „The Cracovian product of two matrices, say A and B, is defined by A ∧ B = (B^T)A

tempodox•3h ago
You're not the only one. That “explanation” is just really bad.
tgv•3h ago
It's the crucial part, and even with the example, I couldn't understand it. Like I can't understand why the second column in the first matrix doesn't have signs. Or why the 0 in the result matrix is negative.

But in another link I found that it's column by column multiplication. So A × B = C, then C[i][j] = sum(A[k][i] * B[k][j]). Unfortunately, the example doesn't match that definition...

burnished•3h ago
No, I think it is too ambiguous to be useful. The example wasn't helpful either, I think they needed to perform the individual calculations for clarity.
kubb•2h ago
Yeah, usually you name the matrix elements a, b, c, d, etc. and write out the formula for the elements of the result.
AdamH12113•2h ago
The example is simply wrong, according to other sources. This along with the inconsistent formatting makes me wonder if it was written by an LLM. It's a shame; this seems like an interesting topic.
andrewla•2h ago
Agreed -- "is a term of the sum" is such an inverted way to look at it.

Better I think would be to say "the result in column i and row j is the sum of product of elements in column i of the left cracovian and column j of the right cracovian".

And even by this definition the example given doesn't seem to track (and the strangeness of sometimes saying "+" and sometimes not, and having both "0" and "-0" in the example is bananas!):

   {  3  2 } {  1  -4 }  =   {  5   -2 }
   { -1  0 } { -2   3 }  =   {  0    2 }


   3 * 1 + -1 * -2 == 5 -- check
   3 * -4 + -1 * 3 == -15 -- what?
   2 * 1 + 0 * -2 == 2 (okay, but shouldn't this be in the lower left, column 1 dotted with column 2?)
   2 * -4 + 0 * 3 = -8 (now I'm really missing something)
mci•2h ago
Thanks for the feedback, everyone. I pasted my Polish text into Gemini to translate it into English. Gemini hallucinated the translation of this example. Now it should be OK.
pomian•1h ago
Even in Polish, this comes out Greek to me.
pomian•1h ago
I mean, it makes some sort of visual sense, but can't grasp the results from the matrices shown.
mci•2h ago
I took the liberty to replace my awkward wording with your "the result in column i and row j is the sum of product of elements in column i of the left cracovian and column j of the right cracovian". Hope you don't mind. Thanks!
fxj•3h ago
I didnt get the explanation of the multiplication. After reading the wikipedia article it made mode sense:

https://en.wikipedia.org/wiki/Cracovian

The Cracovian product of two matrices, say A and B, is defined by

A ∧ B = BT A,

where BT and A are assumed compatible for the common (Cayley) type of matrix multiplication and BT is the transpose of B.

Since (AB)T = BT AT, the products (A ∧ B) ∧ C and A ∧ (B ∧ C) will generally be different; thus, Cracovian multiplication is non-associative.

A good reference how to use them and why they are useful is here (pdf):

https://archive.computerhistory.org/resources/access/text/20...

adastra22•1h ago
As far as I can tell I don’t think it is correct to say that this isn’t a matrix. B is just written down in transposed form. Whether that makes the math more or less clear is something you can argue for or against, but it’s the same math and it is confusing to call it something else.
gnulinux•2h ago
I guess I'm skeptical of using a non-associative algebra instead of something that can trivially be made into a ring or field (i.e. matrix algebra). What advantages does this give us?
mci•2h ago
Author here. There are no practical advantages, as far as I know. Not even faster multiplication on today's computers.
hansvm•1h ago
One thing that comes up in the sort of code ML I like to write is a careful attention to memory layout. Cracovians, defined according to some sibling comment as (B^T)A, make that a little more natural, since B and A can now have the same layout. I haven't used them though, so I don't have a good sense of whether that's more or less painful than other approaches.
esafak•2h ago
Missed a chance to call it the twisted sister!
TimorousBestie•1h ago
What an interesting little nook of matrix analysis history! Thanks for sharing. :)

Phoenix.new – Remote AI Runtime for Phoenix

https://fly.io/blog/phoenix-new-the-remote-ai-runtime/
275•wut42•5h ago•126 comments

EU Eyes Ditching Microsoft Azure for France's OVHcloud

https://www.euractiv.com/section/tech/news/scoop-commission-eyes-ditching-microsoft-azure-for-frances-ovhcloud-over-digital-sovereignty-fears/
104•doener•1h ago•53 comments

Visualizing environmental costs of war in Hayao Miyazaki's Nausicaä

https://jgeekstudies.org/2025/06/20/wilted-lands-and-wounded-worlds-visualizing-environmental-costs-of-war-in-hayao-miyazakis-nausicaa-of-the-valley-of-the-wind/
125•zdw•5h ago•38 comments

Show HN: Nxtscape – an open-source agentic browser

https://github.com/nxtscape/nxtscape
124•felarof•3h ago•89 comments

Show HN: Inspect and extract files from MSI installers directly in your browser

https://pymsi.readthedocs.io/en/latest/msi_viewer.html
7•rmast•24m ago•0 comments

Cracovians: The Twisted Twins of Matrices

https://marcinciura.wordpress.com/2025/06/20/cracovians-the-twisted-twins-of-matrices/
35•mci•3h ago•18 comments

Dancing Naked on the Head of a Pin: The Early History of Microphotography

https://publicdomainreview.org/essay/dancing-naked-on-the-head-of-a-pin
13•crescit_eundo•2d ago•0 comments

Oklo, the Earth's Two-billion-year-old only Known Natural Nuclear Reactor (2018)

https://www.iaea.org/newscenter/news/meet-oklo-the-earths-two-billion-year-old-only-known-natural-nuclear-reactor
137•keepamovin•10h ago•54 comments

Verified Dynamic Programming with Σ-types in Lean

https://tannerduve.github.io/blog/memoization-sigma/
7•rck•3d ago•0 comments

Tuxracer.js play Tux Racer in the browser

https://github.com/ebbejan/tux-racer-js
36•retro_guy•3h ago•13 comments

A Python-first data lakehouse

https://www.bauplanlabs.com/blog/everything-as-python
65•akshayka•2d ago•15 comments

Hurl: Run and test HTTP requests with plain text

https://github.com/Orange-OpenSource/hurl
394•flykespice•16h ago•96 comments

Klong: A Simple Array Language

https://t3x.org/klong/
91•tosh•7h ago•39 comments

Show HN: SnapQL – Desktop app to query Postgres with AI

https://github.com/NickTikhonov/snap-ql
67•nicktikhonov•9h ago•44 comments

New dating for White Sands footprints confirms controversial theory

https://arstechnica.com/science/2025/06/study-confirms-white-sands-footprints-are-23000-years-old/
30•_tk_•2h ago•3 comments

An analysis of recent multithreading improvements for a smoother game

https://dev.arma3.com/post/oprep-performance-optimizations-in-220
23•diggan•3d ago•0 comments

How to Design Programs 2nd Ed (2024)

https://htdp.org
64•AbuAssar•4h ago•13 comments

A Brief, Incomplete, and Mostly Wrong History of Robotics

https://generalrobots.substack.com/p/a-brief-incomplete-and-mostly-wrong
80•Bogdanp•4d ago•33 comments

Minimal auto-differentiation engine in Rust

https://github.com/e3ntity/nanograd
41•lschneider•6h ago•4 comments

Asterinas: A new Linux-compatible kernel project

https://lwn.net/SubscriberLink/1022920/ad60263cd13c8a13/
180•howtofly•18h ago•62 comments

Career advice, or something like it

https://brooker.co.za/blog/2025/06/20/career.html
32•SchwKatze•1h ago•4 comments

Meta announces Oakley smart glasses

https://www.theverge.com/news/690133/meta-oakley-hstn-ai-glasses-price-date
133•jmsflknr•7h ago•253 comments

Qfex (YC X25) – Back End Engineer for a 24/7 Stock Exchange

https://www.ycombinator.com/companies/qfex/jobs/S7XSybx-founding-backend-engineer
1•NPDW•13h ago

ELIZA Reanimated: Restoring the Mother of All Chatbots

https://www.computer.org/csdl/magazine/an/2025/02/11030922/27sQDLuL7Uc
84•abrax3141•3d ago•20 comments

College baseball, venture capital, and the long maybe

https://bcantrill.dtrace.org/2025/06/15/college-baseball-venture-capital-and-the-long-maybe/
103•bcantrill•4d ago•65 comments

Congestion pricing in Manhattan is a predictable success

https://www.economist.com/united-states/2025/06/19/congestion-pricing-in-manhattan-is-a-predictable-success
224•edward•6h ago•351 comments

Reworking Memory Management in CRuby [pdf]

https://blog.peterzhu.ca/assets/ismm_2025.pdf
33•hahahacorn•3d ago•3 comments

Show HN: SecureBuild – Zero-CVE Images That Pay OSS Projects

https://securebuild.com
25•grantlmiller•5h ago•12 comments

Andrej Karpathy: Software in the era of AI [video]

https://www.youtube.com/watch?v=LCEmiRjPEtQ
1351•sandslash•1d ago•739 comments

Microsoft is blocking Google Chrome through its family safety feature

https://www.theverge.com/news/690179/microsoft-block-google-chrome-family-safety-feature
11•chrisjj•1h ago•2 comments