I haven't looked at the patent in detail, but in my experience as a former patent examiner, likely the claims cover some new detail missing from the prior art. You need to look at what was claimed to know what is covered.
I'm not familiar with this technology and don't have time to take a closer look. 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.
> 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.
> 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.
It's really hard to tell based on an article like this. The ANS creator is quoted as saying, "I don't know what to do with it - [Microsoft's patent] looks like just the description of the standard algorithm." However, who knows how much experience he has with patents? It may be that Duda invented the shoelace, and Microsoft invented the plastic sleeve at the tip of the shoelace.
As Timothy Lee says in the article, the problem with this type of patent is that it boxes in how you can use the original technology: you can freely tie your shoes with this shoelace, but if you use a double knot, now you infringe a patent.
In some ways, this mirrors the difference between copyleft and permissive copright licenses. By failing to patent the original invention, Duda made ANS useful and widely available, but he now has no leverage against Microsoft.
If you're implying that only filed patent applications are available as prior art, that's not right. Anything available to the public can be prior art in the US. (Even some private things can be prior art in the US, for example, an offer to sell the invention creates prior art even if completely confidential.) If MS filed a patent application before anyone else, they could still receive a prior art rejection for anything available to the public like code available online, academic papers, etc.
The US is hobbling itself with software patents. China pretty much ignores all patents and will win in the global market because of this. US companies need to quit the stupid patent wars, lest the become irrelevant on the world markets.
I agree that patents are unrealistic in the modern world.
Frankly, it seems that most (nearly all) patents have only a trivial amount of money invested to create the idea, other than what the patent lawyer costs. For example, "playing checkers --- with a computer" patents. Ending all patents would not slow down innovation at all.
There is one exception, drug patenting, where billions are spent developing a drug and getting it approved.
I'm not the parent, but I think patents for drugs are a good thing. I'm willing to be convinced otherwise, but the ease of copying them (once a chemical is known) combined with the cost of finding the drugs seem to fit very well with the spirit of patents, where new knowledge development is rewarded with a temporary monopoly.
I do grant that the practice of patenting small incremental changes to existing patented things ("this drug, with slower release!") does seem a bit questionable, but overall it still seems like a good thing. I'd be interested in hearing your argument for why it's not a good fit.
How many things have you developed after spending unkown amount of time? You don't feel you're entitled to ensure you are credited with that work and allowed to earn from that work?
As I've stated elsewhere in this thread, you don't have to be a dick about owning the patent. It's your patent, and you can do with it what you want. There are patent pools that are managed to ensure they can't be used for evil that you can donate your patent to if you can't afford the time to manage it.
> How many things have you developed after spending unkown amount of time? You don't feel you're entitled to ensure you are credited with that work and allowed to earn from that work?
I do feel that if I spend my time creating something on my own, I should be free to use it, yes. Unfortunately, the patent system means I'm not necessarily allowed to use something I invented and created myself, because it may be patented.
As John Carmack said:
"The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying."
There is an inherent disconnect in your argument. Concrete implementations of software deserve protection sure, and do under copyright law. Software patents are attempting to reserve concepts and generally only hurt innovation by restricting other unrelated ideas from using a technique even if they came up with the algorithm entirely in a white box. History has shown time after time of simultaneous development of ideas once all the pieces are available (just look at Calculus).
This algorithm is a great example as its a general use encoding mechanism. If I develop software to encode and decode radio transmissions to a satellite using it, patenting it will prevent it from being using for say image encoding and decoding across the web. That use has zero impact on my concrete implementation or my commercial sector.
Even for overlapping industries, if there are zero patents, and two competing companies independently come to the same technological solution what is the justification for being able to patent that? If they didn't come to it independently because its available publicly on the web, then its prior art and shouldn't be patent-able anyway. If one reversed engineered the other solution and reproduced it, that's perfectly legal for other industries under certain circumstances and is explicitly allowed under the DMCA. I'm not arguing its right, but if that is supposed to be illegal patents as designed are the wrong tool for enforcement.
This isn't a patent covering a specific use of a specific algorithm for a specific industry (which even then I don't think should be patent-able) but the general algorithm itself restricting ALL uses of it. This is an existing concept that was intended to be open, already exists in the real world, and is on route to becoming part of international standards being gobbled up by Microsoft. There does not appear to be a significant or meaningful contribution to the work in this patent and should really have been rejected due to prior art.
Saying the original author should have patented this is also facile as that takes an enormous amount of resources that isn't available to most lone developers, or researchers, especially when the intent is to give it away freely to world.
The intent of filing a patent to give away freely is specifically to protect against someone else filing the patent. It can be expensive, but not prohibitively so if you're willing to do some of the leg work yourself.
In this case it's an international patent as the original author is not based in or from the US which adds complications. That aside you're looking at a minimum of $500 in patent office fees alone. That's probably fairly reasonable if that was all it is, and if you can get it right on the first try it might be. That cost is per submission and there is a huge schedule of fees that might expand that.
You're also glossing over the personal value of time expenditure to do that which even with professional guidance can take hundreds of hours. It is absolutely prohibitively expensive for something someone is going to give away for free and even most small independent companies.
There should be no reason that a donated public idea or concept should require any expenditure for protection.
Take a look at claims 1, 19 and 20 to see what is covered: https://patents.google.com/patent/US11234023B2/en
The application received 3 rejections before allowance, so it's not like the USPTO rubber-stamped it: https://patentcenter.uspto.gov/#!/applications/16456602/ifw/...
I'm not familiar with this technology and don't have time to take a closer look. 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.