Hacker News new | ask | show | jobs
by adrianmonk 1587 days ago
> But if I were to take a closer look, I'd check out what the examiner wrote in their allowance (Notice of Allowance and Fees Due) to see if they identified a specific feature that makes it patentable.

Thanks. That seems helpful.

To save people some digging and so it's easier to discuss, I've copied (actually retyped) something I found which seems relevant. At your second link, there's a document called "Notice of Allowance and Fees Due (PTOL-85)", and starting on p. 10, there's a section called "Reasons for Allowance", which reads:

----------

Reasons for Allowance

Claims 1 - 28 are allowed in light of the Examiner's Amendment and the Applicant's response filed on August 23, 2021.

The following is an Examiner's statement of reasons for allowance: Applicant has amended independent claim to incorporate detailed subject matter of the decoding process and apparatus.

The closest prior art Greenfield et al., (US 2016/0248440 A1), Li et al., (US 2015/0103902 A1) and Converse (US 2017/0164007 A1) do not disclose the claimed element, "during a first phase of the two-phase structure, selectively updating, depending on a determination of whether or not an output symbol from a previous iteration was generated, state of the RANS decoder using probability information for the output symbol from the previous iteration, the state of the RANS decoder being tracked using a value;" and "during the second phase of the two-phase structure, selectively generating, depending on a determination of whether or not the state of the RANS decoder includes sufficient information to generate an output symbol for a current iteration, the output symbol for the current iteration using the state of the RANS decoder, the state of the RANS decoder including sufficient information to generate the output symbol for the current iteration if the state of the RANS decoder is greater than a threshold". Therefore, the prior art references taken either alone or in combination fails to anticipate or fairly suggest the limitations of the independent claims. While using a range asymmetric number system (RANS) decoder was known at the time of the invention, Applicant's very specific claimed structure is considered patentable over the prior art of record.

----------

As a total layman, not knowing the tech here (or patents or law), it sounds promising to me, in the sense that it probably doesn't stop everyone from using RANS.

It mentions prior art and says "RANS" ... "was known" in conjunction with that. And it also says "very specific claimed structure", which also sounds like this doesn't cover all of RANS.

1 comments

> decoder using probability information for the output symbol from the previous iteration, the state of the RANS decoder being tracked using a value

> state of the RANS decoder including sufficient information to generate the output symbol for the current iteration if the state of the RANS decoder is greater than a threshold

I am not a lawyer. That reads to me like a 'relaxation'/optimization of the decoder to allow for iterations that don't yield any symbols, but still transforms the decoder state which affects subsequent symbols.

It's interesting, but feels a bit obvious to me. IIRC zstd decoder spec explicitly describes a state machine that is updated as bytes are read and symbols emitted and it doesn't seem like a big leap to imagine some ops taking multiple iterations. Then again I'm not exactly drowning in novel compression algorithms that I invented myself, so...

I wonder if you'd work around it if you it 'transpose' the problem and consider it to be variable bytes-per-instruction but still one instruction-per-symbol.