Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Patents

Linked List Patented in 2006 477

An anonymous reader writes "Congratulations are in order to Ming-Jen Wang of LSI Logic Corporation who, in patent #10260471 managed to invent the linked list. From the abstract, "A computerized list is provided with auxiliary pointers for traversing the list in different sequences. One or more auxiliary pointers enable a fast, sequential traversal of the list with a minimum of computational time. Such lists may be used in any application where lists may be reordered for various purposes." Good-bye doubly linked list. We should also give praise to the extensive patent review performed by Cochran Freund & Young LLP."
This discussion has been archived. No new comments can be posted.

Linked List Patented in 2006

Comments Filter:
  • by Paul Crowley ( 837 ) on Monday March 19, 2007 @08:17AM (#18400071) Homepage Journal
    If you RTFP, what's actually being patented is the idea of using multiple pointers so that the same item can be in more than one linked list at a time. This idea is also a long way from being novel, but it's slightly different from patenting the linked list. Arguably a doubly-linked list is prior art...
  • by MojoRilla ( 591502 ) on Monday March 19, 2007 @08:23AM (#18400113)
    What he actually invented was a linked list with two or three pointers, an therefore sort orders, in the same list. Doubly linked lists [wikipedia.org] demonstrate his concept, though are more complicated (since they allow backwards traversals of the same list) and useful.
  • by Anonymous Coward on Monday March 19, 2007 @08:26AM (#18400121)
    Robert Endre Tarjan, Data Structures and Network Algorithms, SIAM, 1983:

    Endogenous structures are more space-efficient than exogenous ones, but they require that a given element be in only one *** or a fixed number of structures *** at a time.
  • To be fair ... the first patent that the examiner cited is PRIOR ART (I'd argue it too is invalid) for this patent.

    What's worse? LibTomCrypt uses quad-lists (prev/next, parent/child) so it seems that I violate this patent. Gotta go cut a cheque to LSI.

    Tom
  • Two things... (Score:5, Informative)

    by thebdj ( 768618 ) on Monday March 19, 2007 @08:39AM (#18400213) Journal
    The patent # is actually 7028023. The summary quoted number is the application number. Also, this is OLD, issued almost a full year ago. I actually think we had an argument about this long before now. I am starting to wonder if some of these anonymous submissions for these are actually coming from examiners with a clue. (Trust me there are some.) And look, I found it. [slashdot.org]
  • by Anonymous Coward on Monday March 19, 2007 @08:42AM (#18400241)
    You can click on an examiner to see what patents he/she has examined.
    Try that on these guys, i think i can yell "prior art" on almost all of these "inventions".

  • by tgd ( 2822 ) on Monday March 19, 2007 @08:43AM (#18400251)

    If you RTFP, what's actually being patented is the idea of using multiple pointers so that the same item can be in more than one linked list at a time. This idea is also a long way from being novel, but it's slightly different from patenting the linked list. Arguably a doubly-linked list is prior art...
    Well, thats the key of any patent story on Slashdot -- no one responding knows how to read a patent. They don't seem to understand, no matter how often someone explains it, that the claims are read in sequence, and if your solution doesn't infringe leaf nodes in the tree of claims, it doesn't infringe.

  • by Anonymous Coward on Monday March 19, 2007 @08:48AM (#18400291)
    You are all suffering from hindsight bias, you all think you've used linked and double links and n-linked lists before but in reality you were using vectors and this is a genuine innovation. ;)

    Here in the EU, JURI is trying to criminalize all IP infringements again:
    http://press.ffii.org/Press_releases/Criminal_Sanc tions_Rapporteur_fails_to_protect_European_industr y [ffii.org]

    The vote is expected 20th March (tomorrow) with the aim of making minor copyright, trademark and patent infringement into a criminal offense. There is no fair use in Europe either.
    This has little to do with the real world, EU has no jurisdiction in European criminal law, but if it can make a trade issue into a criminal law issue it can expand EU control in that direction. So JURI has cooked up this trick whereby IP rights are claimed as a trade issue and pumped it up to claim infringement needs criminal prosecutions.

  • by 22_9_3_11_25 ( 645799 ) on Monday March 19, 2007 @09:03AM (#18400419)
    http://www.uspto.gov/web/offices/com/iip/complaint s.htm [uspto.gov] Complaints should be mailed to the following address: Mail Stop 24 Director of the U.S. Patent and Trademark Office P.O. Box 1450 Alexandria, VA 22313-1450
  • by Fordiman ( 689627 ) <fordiman @ g m a i l . com> on Monday March 19, 2007 @09:04AM (#18400427) Homepage Journal
    "I have yet to hear a convincing argument why Babbage's engine, which uses physical mechanical gears to implement an algorithm, is inherently more patentable than the same algorithm in software. How about if I use an FPGA instead? Is it patentable then?"

    Easy: Babbage had to design the gears, switches, etc, and the arrangement thereof to get the effect of calculation. That's patentable. The algorithm he intended to use it to accomplish is not; it's just an artifact of math, and subject to the natural laws clause.

    If you used an FPGA, you could patent the arrangement of gate-feilds, possibly, but the algorithm you're trying to achieve would (should) still not be patentable.
  • Dupe (Score:3, Informative)

    by Per Abrahamsen ( 1397 ) on Monday March 19, 2007 @09:04AM (#18400433) Homepage
    Prior art [slashdot.org] for this story.
  • by nickovs ( 115935 ) on Monday March 19, 2007 @09:08AM (#18400473)
    ... if your solution doesn't infringe leaf nodes in the tree of claims, it doesn't infringe.

    That's simply not true. Patent claims are frequently built upon prior claims in the same patent; if a later claim is built on an earlier claim (e.g. in this case where claim 2 cites claim 1) then you need to infringe both parts in order to fall fowl of the later claim. That said, infringing a stand-alone claim (like claim 1 here) is sufficient in itself.

    As far as I can tell claim 1 really does hit a standard doubly-linked list; you have the plurality of data items, a primary order of traversal and an auxiliary order (e.g. reverse traversal). There is obvious prior art for this and the claim should be invalid. Claim 2 is therefor also invalid, irrespective of it's novelty, since it cites an invalid claim. Claims 3 and 4 also have obvious prior art.

    Personally I think that patents like this are great, since they add substantial support to the argument that the USPTO are, despite their avowed best efforts, incapable of assessing the novelty of software patents, and that they should stop trying.
  • Mod parent down...! (Score:1, Informative)

    by Anonymous Coward on Monday March 19, 2007 @09:10AM (#18400479)

    Well, thats the key of any patent story on Slashdot -- no one responding knows how to read a patent. They don't seem to understand, no matter how often someone explains it, that the claims are read in sequence, and if your solution doesn't infringe leaf nodes in the tree of claims, it doesn't infringe.
    I should know how to read a patent, I'm a patent examiner, but no, not at the USPTO.

    What you are saying is simply wrong! You can infrige on every claim, not only on 'leaf nodes'. However, what have to be taken into account is that dependant claims inherit all features of their parent claims. Dependant claims are therefore narrower, and harder to infrige, claims higher up on the hierarchy are broader, therfore easier to infrige but also easier to be invalidated by prior art.

  • by larryboymi ( 1026734 ) on Monday March 19, 2007 @09:20AM (#18400543)
    I was an examiner for awhile. Got out after 9 months because I saw the path. A lot of $, but a lot of OCD people, and stress due to quotas.

    I had a B.S. in C.S. and I was simply working on GUI patent apps. They wouldn't hire someone with a degree in an outside area (like Business or something) to do C.S. work, although there were a lot of EE's doing C.S. work (although I see that in the commercial realm a lot too, not always to great success, but sometimes).

    Wouldn't recommend it for anyone other than an anti-social who wants to make bank and doesn't mind a boring, high-stress job.
  • Re:Prior Art? (Score:4, Informative)

    by ReverendHoss ( 677044 ) on Monday March 19, 2007 @09:22AM (#18400579)

    I'm not going to take the time to read the patent itself, but just an FYI on your comment, multi-list cells can be considered triply-linked lists. Useful for replacing sparsely populated two-dimensional arrays. Or skip lists, which are rather nifty, though I've never had a real-world application for them beyond job-interview brainteasers.

    Hrm, I wonder if there's anything else patentable in my old Data Structures and Algorithms class notes...

  • Re:Prior Art? (Score:3, Informative)

    by Entrope ( 68843 ) on Monday March 19, 2007 @09:34AM (#18400673) Homepage
    Skip lists have more than one forward pointer in each node, and are an extremely well-known data structure. Wikipedia says they were invented (Wikipedia's word is "discovered", which seems inaccurate to me) by William Pugh in 1990 and published then.
  • Re:Prior Art (Score:3, Informative)

    by SethHoyt ( 1024709 ) on Monday March 19, 2007 @09:39AM (#18400725)
    I've got a better one. Check out "C++: An Introduction to Data Structures" by Larry Nyhoff, copyright 1999.

    Under section 9.5 (Other Multiply-Linked Lists), there is a description of "Multiply-Ordered Lists" which is identical to what is in the patent.

    An excerpt from the text:

    "In some applications however, it is necessary to maintain a collection ordered in two or more different ways... One way to accomplish such multiple orderings is to maintain separate ordered linked lists, one for each of the desired orders... A better approach is to use a single list in which multiple links are used to link the nodes together in the different orders."

    The same section of a newer edition is available for viewing online here [safarix.com].

  • Prior art? (Score:2, Informative)

    by 91degrees ( 207121 ) on Monday March 19, 2007 @09:41AM (#18400745) Journal
    Normally I'm a bit skeptical when Slashdot interprets these patents, and s per usual, the summary does so. The patent does not cover doubly linked lists. It covers a generalisation of the idea that may or may not include doubly linked lists. Inthis patent, the list can be transferred in a number of predefined sequences. Doubly linked lists typically only allow traversal forwards and backwards.

    But, this is a well known data type, known as a multiply linked list. A couple of minutes with google code search gave me an example in the form of the "engine" structure in GIST [google.com], which can be traversed in order of Active Engines.

    Oh, and also - Dupe! [slashdot.org]
  • by sd790 ( 643354 ) on Monday March 19, 2007 @09:42AM (#18400751)
  • Re:Prior Art? (Score:2, Informative)

    by Krakhan ( 784021 ) on Monday March 19, 2007 @10:18AM (#18401081)
    Indeed, and you can get even more general with implementing a general graph with adjacency lists, of which your example and the patent are special cases. Prior art indeed!
  • by TrappedByMyself ( 861094 ) on Monday March 19, 2007 @10:21AM (#18401123)
    It is a patent. The submitter is just dumb.

    linky [uspto.gov]
  • Textbook Algorithm (Score:2, Informative)

    by SethHoyt ( 1024709 ) on Monday March 19, 2007 @10:26AM (#18401173)
  • by Anonymous Coward on Monday March 19, 2007 @10:40AM (#18401323)
    Actually, it is required to have a degree. If you would do a little more 'examining,' you'd find this tab: http://jobsearch.usajobs.opm.gov/getjob.asp?JobID= 53094827&fn=4537&jbf574=CM56&brd=3876&AVSDM=2007-0 3-07+16%3A50%3A42&vw=b&Logo=0&FedPub=Y&caller=%2Fa 9pto.asp&pg=1&jbf571=13&FedEmp=N&ss=0&TabNum=3&rc= 2 [opm.gov]

    And while it is possible for someone to start at $38,435/year, there is no practical way anyone would be hired at the LOWEST possible salary from the pay table for examiners: http://apps.opm.gov/SSR/tables/StaticFiles/SrText/ 0576_20070101.txt [opm.gov]

    Pay is actually very good, and it's easy (relative to industry) to get promoted/pay raises. It's possible to start at 7/10 (currently ~62k) and double your salary in about 4-5 years. There are very very few places in industry where that is possible.

    Starting pay is commensurate with education AND your GPA. Your degree determines your pay grade, and your GPA determines your step.

  • by corran__horn ( 178058 ) on Monday March 19, 2007 @10:41AM (#18401329)
    The claims would seem to cover something like a skiplist [wikipedia.org].

    Although in application and detail, I cannot see ever using this, as multiple orderings of a list sound painful and expensive to update and maintain. I suspect this is spaghetti code in the form of a patent, as I can construct the example out of three lists, and the additional headache would only be worth it if the reduction of half the total space used (approximately) would be significant (this is based on the assumption that the list items are pointers to the real objects elsewhere.) It should also be noted that that is just a reduction in the list size which does not include data (which I would expect to be far larger). It also would reduce the constant factors in item deletion (delete and (while increasing them for item creation), both netting zero change. I suppose it would allow for some features such as dynamic ordering changes (changing sequence while reading back the list (abcde read as abcba or something)).

    I have to say that I feel a great deal of sympathy for the examiner who was responsible for dealing with this patent, as it was horrible (the horror...)
  • by blckbllr ( 242654 ) on Monday March 19, 2007 @11:50AM (#18402043)
    I'll make a couple of quick comments:

    First, claim 1 may be invalid under 35 U.S.C. 101 [uspto.gov] as claiming unpatentable subject matter. It has been my experience that a 35 U.S.C. 101 rejection will issue against a "software patent" where the claim is not directed to something that produces a "useful, tangible, and concrete" result (see, State Street Bank v. Signature [bustpatents.com]). More often, this type of rejection will issue against a claim (not an application), where the claim is directed to purely mathematical operations with no tie-in to hardware to perform that operation. In reading claim 1, there appears to be no claimed hardware that performs the algorithm recited, and hence, I would argue that the claim is invalid. For a more thorough discussion of patentable subject-matter, please see Section 2106.1 [uspto.gov] of the Manual of Patent Examination and Procedure. However, without looking at the image file wrapper [uspto.gov], I don't know what rejections were applied to this application to determine whether claim 1 was amended to overcome this specific rejection.

    Now, that being said, if you are concerned about invalidating this patent (which I'll note issued in April 2006, almost one year ago), you should first find "prior art" before the earliest filing date of the application. In this case, that date appears to be September 26, 2002. I say "appears to be" because the application does not claim priority to an earlier filed foreign application or U.S. provisional application. Next, after gathering your pre-September 26, 2002, you should follow the re-examination procedures for submission. See Section 2200 [uspto.gov] of the MPEP. Keep in mind, that when a third-party submits prior art for a re-examination proceeding, the prior art should present a new question of patentability. After submission of the "prior art," that third-party is generally not allowed to make comments during the re-examination proceeding. Hence, if the USPTO finds that the "prior art" does not present a new question of patentability, you may have inadvertently made the patent "stronger" and less likely to be invalidated during litigation. Accordingly, you should consider whether infringing this patent may be better procedure, and thus filing a motion that the patent is, in fact, invalid.

    This views represent my own and are in no way affiliated with any government organization or private entity.
  • Re:Prior Art? (Score:3, Informative)

    by jfengel ( 409917 ) on Monday March 19, 2007 @11:53AM (#18402093) Homepage Journal
    We use skip lists in our software. Like b-trees, they're more useful in persistent situations where getting data in blocks is an important consideration than in memory-only applications.
  • Re:Prior Art? (Score:3, Informative)

    by whoever57 ( 658626 ) on Monday March 19, 2007 @12:06PM (#18402299) Journal

    Well, if your read the patent, it's for triply-linked lists,
    Reading the patent, hmm.... that might be a good idea: let's look at claim 1:

    1. A computerized list that may be traversed in at least two sequences comprising:
    a plurality of items that are contained in said computerized list; and
    a primary pointer and an auxiliary pointer for each of said items of said computerized list such that each of said items has an associated primary pointer and an associated auxiliary pointer, said primary pointer functioning as a primary linked list to direct a computer program to a first following item and defining a first sequence to traverse said computerized list, said auxiliary pointer functioning as an auxiliary linked list to direct said computer program to a second following item and defining a second sequence to traverse said computerized list.
    Looks like a doubly-linked list to me.

    The patent may claim triply-linked lists (see claim 2), but it also makes a claim on doubly linked lists.

  • by blckbllr ( 242654 ) on Monday March 19, 2007 @12:07PM (#18402303)
    One last follow-up that I realized I forgot to discuss:

    In submitting your pre-September 26, 2002 "prior art," you should also make sure that the "prior art" is at least "prior art" under 35 U.S.C. Section 102(b) [uspto.gov]. For the unfamiliar, this is "102(b)" prior art. "Prior art" that falls under the rubric of 35 U.S.C. Section 102(b) generally cannot be challenged by the Applicant of the application for patent. For example, with "102(a)" prior art, the Applicant for patent can "swear behind" the prior art to show that the the Applicant's "date of invention" is before the "prior art's" earliest effective date.

    As an example, I note that the filing date of application is September 26, 2002. In this example, if you were to submit "102(a)" prior art with an earliest effective date of September 27, 2001, the Applicant of the patent may be able to demonstrate that he/she was working on the invention as of September 20, 2001, hence, overcoming the application of this art (there are some legal concerns regarding what constitutes "working on," but I'll save that discussion for a later time). Now, suppose you submit "prior art" with an earliest effective date of September 25, 2001. This is "102(b) prior art" because it's earliest effective date is at least one year prior to the earliest effective filing date of the application (there are some issues when the application claims priority to an earlier filed application, but this is not the case). In this scenario, where the "prior art" applied is "102(b) prior art," the Applicant cannot swear behind the applied "prior art," even if the Applicant was working on the invention before the earliest effective date of the "102(b) prior art."

    That being said, you should also consider whether your "102(b) prior art" discloses each and every limitation of all of the claims, not simply the independent claims (in this case claims 1, 3 and 4.) (For a discussion of "what is a limitation," see the various sub-sections of Section 608.01 [uspto.gov] of the MPEP. However, I will note that you can combine references under 35 U.S.C. 103 [uspto.gov], but again, that's a discussion for another topic.

    So, to recap:

    1) Make sure that your reference is before the earliest, effective filing date of the application for patent (i.e. that it is "prior art");
    2) Make sure that your "prior art" is "102(b) prior art"; and,
    3) Make sure that each and every limitation of each and every claim is disclosed in the application.

    These views represent my own and are in no way associated with any government organization or private entity.
  • Re:Prior Art? (Score:3, Informative)

    by Lord Ender ( 156273 ) on Monday March 19, 2007 @12:28PM (#18402571) Homepage

    I'm filing a patent on lodging patents.
    That joke stopped being funny almost a decade ago.

  • Re:Prior Art? (Score:2, Informative)

    by The Empiricist ( 854346 ) on Monday March 19, 2007 @02:53PM (#18404413)

    Anyhow, what is really missing in all of this discussion is a response from the patent submitter or the persons in charge of accepting the patent; we never get this on Slashdot nor the stories referred to. Since the patent appears to be so unbelievable, I am very curious as to what their official response would be. Perhaps some IT journalist can get one?

    It's really unfair to suggest that the patent examiner responsible for allowing this patent should respond to criticisms given that the examiner's reasoning is already publicly available. Just go to the USPTO Patent Application Information Retrieval [uspto.gov] system and search for patent number 7028023. You can see what the patent examiner reviewed, what was argued, what the response was, etc.

    After reading through these documents, then it is fair to argue that there was a better approach to analyzing the patent application. For example, the examiner relied heavily on the argument that this patent [uspto.gov] anticipated the claimed invention when rejecting the claims. This patent was not closely related to the claimed invention (it involves a linked list paired with an array pointing into various places in the list). A sorted double-linked list may very well have formed a better basis for an argument because it is at least more closely related. Also, the examiner did not make any obviousness claim. Perhaps it was too difficult to find some teaching or suggestion that would have made the claimed invention obvious in light of the prior art, but perhaps the examiner would have been able to find something had the examiner spent less time writing out an argument that the claimed invention was not patentable art (not because of obviousness or novelty, but because of subject matter).

1 + 1 = 3, for large values of 1.

Working...