|
Oracle v. Google - Patent Infringement Instructions, Damage Phase Witnesses, and the Continuing Saga of Infringer's Profits ~mw |
|
Wednesday, May 16 2012 @ 08:39 AM EDT
|
The jury is out on the issue of patent infringement, and the instructions issued to the jury (1153 [PDF; Text])are more favorable to Google than originally drafted. Gone are the references to "blind willfulness" and included are the definitions more favorable to Google than to Oracle. The Special Verdict Form (Text) is shortened as well given that the parties stipulated to indirect infringement on a finding of direct infringement.
The parties have also teed up their list of witnesses for the damages phase, assuming there is one. Oracle, as expected, is going to drag in Larry Page and Eric Schmidt, and what would we do without hearing from Tim Lindholm one more time. (1154 [PDF; Text]) Google's list is far shorter (1155 [PDF; Text]), and Google indicates they will only call Prof. Astrachan if Oracle calls Prof. Mitchell.
Meanwhile, the soap opera over infringer's profits on rangeCheck and/or the decompiled files continues with Google filing a further trial brief on the subject (1156 [PDF; Text]) and Oracle filing its alleged proof of a causal connection between those two infringing tidbits and Google's profits (1157 [PDF; Text]) This really does resemble a soap opera if for no other reason than each successive filing on this issue repeats much of what has been stated before. The significant difference this time is that Oracle idetnifies what it will offer as proof of that causal connection.
Of course, we can only hope that this simply all goes away, but that is dependent on the jury's finding on patent infringement and the Court's determination of the issue of whether APIs can be copyrighted.
*************
Docket
05/15/2012 - 1153 - FINAL
CHARGE GIVEN TO JURY FOR PHASE TWO. Signed by Judge Alsup on May 15,
2012. (Attachments: # 1 Special Verdict Form)(whalc1, COURT STAFF)
(Filed on 5/15/2012) (Entered: 05/15/2012)
05/15/2012 - 1154 -
Witness List by Oracle America, Inc. Rolling List of Next Ten
Witnesses. (Muino, Daniel) (Filed on 5/15/2012) (Entered: 05/15/2012)
05/15/2012 - 1155 -
Witness List by Google Inc. Rolling List of Next Ten Witnesses. (Van
Nest, Robert) (Filed on 5/15/2012) (Entered: 05/15/2012)
05/15/2012 - 1156 - TRIAL
BRIEF re Oracle's Failure of Proof on Causation by Google Inc.. (Van
Nest, Robert) (Filed on 5/15/2012) (Entered: 05/15/2012)
05/15/2012 - 1157 - TRIAL
BRIEF ORACLES OFFER OF PROOF ON LITERALLY COPIED CODE FILES AND
INFRINGERS PROFITS by Oracle America, Inc.. (Holtzman, Steven) (Filed
on 5/15/2012) (Entered: 05/15/2012)
*************
Documents
1153
IN THE UNITED STATES DISTRICT COURT
FOR THE NORTHERN DISTRICT OF CALIFORNIA
ORACLE AMERICA, INC.,
Plaintiff,
v.
GOOGLE INC.,
Defendant.
No. C 10-03561 WHA
FINAL CHARGE TO THE JURY
AND SPECIAL VERDICT FORM
FOR PHASE TWO
1.
Members of the jury, it is now my duty to instruct you on the law that applies to this
phase. A copy of these instructions will be available in the jury room for you to consult as
necessary.
It is your duty to find the facts from all the evidence and to decide whether the side with
the burden of proof has carried that burden, applying the elements of proof required by the law,
elements I will provide you in a moment. In following my instructions, you must follow all of
them and not single out some and ignore others. You must not read into these instructions or
into anything the Court may have said or done as suggesting what verdict you should return —
that is a matter entirely up to you. I will repeat only part of the instructions I previously gave
you regarding what is and is not evidence and the burdens of proof.
2.
The evidence from which you are to decide what the facts are consists of:
1. The sworn testimony of witnesses, whether presented in person or by depositions;
2. The exhibits received into evidence; and
3. Any stipulated facts and pretrial discovery items read into evidence, such as the
responses to the requests for admissions.
3.
Certain things, however, are not evidence, and you may not consider them in deciding
what the facts are. I will list them for you:
1. Arguments, statements and objections by lawyers are not evidence. The lawyers
are not witnesses. What they have said in their opening statements, closing
arguments and at other times is intended to help you interpret the evidence, but it
is not evidence itself. If the facts as you remember them differ from the way the
lawyers have stated them, your memory of them controls.
2. A suggestion in a question by counsel or the Court is not evidence unless it is
adopted by the answer. A question by itself is not evidence. Consider it only to
the extent it is adopted by the answer.
2
3. Testimony or exhibits that have been excluded or stricken, or that you have been
instructed to disregard, are not evidence and must not be considered. In addition,
some testimony and exhibits have been received only for a limited purpose; where
I have given a limiting instruction, you must follow it.
4. Anything you may have seen or heard when the Court was not in session is not
evidence.
4.
Evidence may be direct or circumstantial. You should consider both kinds of evidence.
The law makes no distinction between the weight to be given to either direct or circumstantial
evidence. It is for you to decide how much weight to give to any evidence.
5.
Certain charts and summaries have been shown to you in order to help explain the facts
disclosed by the books, records, and other documents which are in evidence in the case. They
are not themselves evidence or proof of any facts. If they do not correctly reflect the facts or
figures shown by the evidence in the case, you should disregard these charts and summaries and
determine the facts from the underlying evidence.
6.
Now I will address the burden of proof. In this phase, the preponderance of the evidence
standard applies to all issues except one. When a party has the burden of proof on any issue by a
preponderance of the evidence, it means you must be persuaded by the evidence that the
allegation is more probably true than not true. To put it differently, if you were to put the
evidence favoring a plaintiff and the evidence favoring a defendant on opposite sides of a scale,
the party with the burden of proof on the issue would have to make the scale tip somewhat
toward its side. If the party fails to meet this burden, then the party with the burden of proof
loses on the issue. Preponderance of the evidence basically means “more likely than not.”
For one issue, the standard is higher and is called proof by clear and convincing
evidence. When a party has the burden of proving any claim by clear and convincing evidence,
3
it means you must be persuaded by the evidence that the claim is highly probable. This is a
higher standard of proof than proof by a preponderance of the evidence.
7.
On any issue, if you find that plaintiff carried its burden of proof as to each element of a
particular issue, your verdict should be for plaintiff on that issue. If you find that plaintiff did
not carry its burden of proof as to each element, you must find against plaintiff on that issue.
8.
I now will turn to the law that applies to this case. As you know, in this lawsuit Oracle
seeks relief from Google for allegedly infringing claims 11, 27, 29, 39, 40, and 41 of United
States Patent Number RE38,104 (“Method And Apparatus For Resolving Data References In
Generated Code”); and claims 1 and 20 of United States Patent Number 6,061,520 (“Method and
System for Performing Static Initialization”). I will refer to these claims as the “asserted
claims.” The products that allegedly infringe the asserted claims are certain Android mobile
devices and software and the Android Software Development Kit (“SDK”). The Android SDK
is a set of development tools that a programmer can use to develop applications for Android.
The Android SDK includes a set of libraries, documentation, an emulator for emulating an
Android device on a computer, a debugger, and a sample set of code. Google denies that it
infringes. Your job is to decide the issues of infringement.
9.
As you know, the patent claims are the numbered paragraphs at the end of the patent.
The claims are important because they specifically define the exclusive rights granted by the
patent office. The figures and the rest of the patent provide a description and/or examples of the
invention and provide a context for the claims but the claims define how broad or narrow the
patent holder’s rights are. It is often the case that a patent specification and its figures disclose
more than the specific matter claimed as inventions, so it is important to keep straight what the
specification says versus what the claims say.
4
10.
In a patent, an independent claim is one that is a stand-alone claim and does not
incorporate any other claim. A dependent claim is one that depends on an earlier claim by
incorporating it by reference and then adding one or more additional elements. Such
incorporation imports the entirety of the incorporated claim, including all of its elements, into
the dependent claims. For the ’104 patent, all of the asserted claims are independent claims. For
the ’520 patent, claim 1 is an independent claim. Claim 20 is a dependent claim. Claim 20
incorporates independent claim 18.
11.
I am now going to instruct you on the meaning of some of the words and phrases in the
claims of the ’104 patent. You must accept and use these meanings in your deliberations.
Intermediate form code and intermediate form object code: Both “intermediate form
code” and “intermediate form object code” mean “executable code that is generated by
compiling source code and is independent of any computer instruction set.”
Symbolic reference: The term “symbolic reference” means “a reference that identifies
data by a name other than the numeric memory location of the data, and that is resolved
dynamically rather than statically.”
Resolve and Resolving: The term “resolving” a symbolic reference means “at least
determining the numerical memory-location reference that corresponds to the symbolic
reference.”
You must accept these definitions as established for purposes of your deliberations and
verdict. You may, however, consider all of the evidence in the case as to whether or not the
accused product or method meets these definitions. If a witness has based his view on meanings
of the terms contrary to my stated definitions, you should discount that part of his testimony
accordingly.
5
12.
Oracle has the burden of proof on infringement. Oracle must persuade you that it is more
likely than not that Google has infringed.
13.
A patent’s claims define what is protected by the patent. A product or method infringes a
patent if all limitations of an asserted claim are present in the product or method. Each claim
asserted must be separately analyzed.
14.
Oracle accuses Google of infringement. Deciding whether a claim has been infringed is
a two-step process. The first step is to decide the meaning of the patent claim. I have already
instructed you as to the meaning of some of the terms in the asserted patent claims. The second
step is to decide whether Google has made, used, sold, or offered for sale within the United
States a product or method covered by an asserted claim. Distributing or offering a product for
free constitutes a use or sale. If Google has, it infringes. You, the jury, make this decision.
You must consider each of the asserted claims of a patent individually, and decide
whether Google infringes that claim.
To decide whether an accused product or method infringes an asserted claim, you must
compare the accused product or method with that particular patent claim and determine whether
every limitation of the asserted claim is included in the accused product or method. If so, then
the maker, user, or seller of the product or method infringes that claim. If, however, the accused
product or method does not meet every requirement in the particular asserted claim, then the
maker, user, or seller does not infringe that claim. You must decide infringement for each
asserted claim separately. Oracle must prove infringement of the claim by a preponderance of
the evidence.
15.
If all elements of an asserted claim have been proven, it is not a defense to infringement
that the accused product or method includes an additional element not called out in the patent
claim. For infringement to be proven, the elements must all be present as per the claim
6
language. For example, if a patented method claim calls out three steps to paint a wall, it would
be infringed by a method including the same three steps in the claim and it would be no defense
that a fourth step is also done.
16.
To prove infringement, it is not necessary to prove that any infringement was intentional
or willful. Innocent infringement would still be infringement. The fact, if true, that the accused
product or method was independently developed without any copying of the patent owner’s
product or method is not a defense to infringement. All that matters for purposes of infringement
is whether all limitations of the claim are present in the accused product or method.
17.
To assist you on the infringement issue, counsel gave you a handout that identified the
limitations in dispute and underlined in red the elements disputed. Oracle contends that the
accused products and methods satisfy all the limitations of the asserted claims. Google concedes
that the elements not underlined are present in the accused products but contends the underlined
items are absent.
You heard reference during opening statements to something called “indirect
infringement.” In order to simplify your work, the parties have agreed that the only issue for you
to decide is whether Google infringes and if so whether it was willful.
18.
If you have decided that Google has infringed, you must go on and address an additional
issue of whether or not this infringement was willful. For this willfulness inquiry, you can only
consider events that occurred prior to the filing of this lawsuit on August 12, 2010.
Willfulness requires you to determine by clear and convincing evidence that Google
acted recklessly. Again, when a party has the burden of proving any claim by clear and
convincing evidence, it means you must be persuaded by the evidence that the claim is highly
probable. This is a higher standard of proof than proof by a preponderance of the evidence. To
prove that Google acted recklessly, Oracle must prove two things by clear and convincing
evidence:
7
The first part of the test is objective: Oracle must persuade you by clear and convincing
evidence that Google acted despite a high likelihood that Google’s actions infringed a patent. In
making this determination, you may not consider Google’s state of mind. Legitimate or credible
defenses to infringement, even if not ultimately successful, demonstrate a lack of recklessness.
Only if you conclude that Google’s conduct was reckless do you need to consider the second part
of the test.
The second part of the test does depend on the state of mind of Google. Oracle must
persuade you by clear and convincing evidence that Google actually knew or should have known
that its actions constituted an unjustifiably high risk of infringement of a patent.
To determine whether Google had this state of mind, consider all facts which may
include, but are not limited, to:
1. Whether or not Google acted in accordance with the standards of commerce for
its industry;
2. Whether or not Google intentionally copied a product of Oracle that is covered by
the asserted patents;
3. Whether or not there is a reasonable basis to believe that Google did not infringe
or had a reasonable defense to infringement;
4. Whether or not Google made a good-faith effort to avoid infringing the asserted
patents, for example, whether Google attempted to design around the asserted
patents; and
5. Whether or not Google tried to cover up its infringement.
19.
I will again give you a special verdict form to guide your deliberations. Although the
special verdict form presents the questions in numerical order, you may consider the questions
out of sequence so long as your answers conform to the directions on the form concerning which
questions you must ultimately answer and which questions are only conditional depending on
your other answers.
8
20.
When you retire to the jury room to deliberate, you will soon receive the following
things:
1. All of the exhibits received into evidence, including those from Phase
One;
2. An index of the exhibits;
3. A work copy of these jury instructions for each of you;
4. A work copy of the verdict form for each of you; and
5. An official verdict form.
Remember that none of these items are evidence except the exhibits.
When you recess at the end of a day, please place your work materials in the brown
envelope provided and cover up any easels with your work notes so that if my staff needs to go
into the jury room, they will not even inadvertently see any of your work in progress.
21.
In your deliberations it is usually premature to take a straw vote early on. This is due to
the risk of jury members expressing a premature opinion and then, out of pride, digging in their
heels. Rather it is usually better to discuss the evidence, pro and con, on the various issues
before proceeding to take even a straw vote. In this way, all the viewpoints will be on the table
before anyone expresses a vote. These are merely recommendations, however, and it is entirely
up to you to decide on how you wish to deliberate.
22.
A United States Marshal will be outside the jury-room door during your deliberations.
If it becomes necessary during your deliberations to communicate with me, you may send a note
through the Marshal, signed by your foreperson or by one or more members of the jury. No
member of the jury should ever attempt to communicate with me except by a signed writing, via
the Marshal, and I will respond to the jury concerning the case only in writing or here in open
court. If you send out a question, I will consult with the lawyers before answering it, which may
take some time. You may continue your deliberations while waiting for the answer to any
9
question. Remember that you are not to tell anyone — including me — how the jury stands,
numerically or otherwise, until after you have reached a unanimous verdict or have been
discharged. Do not disclose any vote count in any note to the Court.
23.
You have been required to be here each day from 7:45 A.M. to 1:00 P.M. Now that you
are going to begin your deliberations, you are free to modify this schedule within reason. For
example, if you wish to continue deliberating in the afternoons after a reasonable lunch break,
that is fine. The Court does, however, recommend that you continue to start your deliberations
by 8:00 A.M. If you do not reach a verdict by the end of today, then you will resume your
deliberations tomorrow and thereafter.
It is very important that you let us know via note what hours you will be deliberating so
that we may conform our schedule to yours.
24.
You may only deliberate when all of you are together. This means, for instance, that in
the mornings before everyone has arrived or when someone steps out of the jury room to go to
the restroom, you may not discuss the case. As well, the admonition that you are not to speak to
anyone outside the jury room about this case still applies during your deliberation.
25.
After you have reached a unanimous agreement on a verdict, your foreperson will fill in,
date and sign the verdict form and advise the Court through the Marshal that you have reached a
verdict. The foreperson should hold onto the filled-in verdict form and bring it into the
courtroom when the jury returns the verdict. Thank you for your careful attention. The case is
now in your hands. You may now retire to the jury room and begin your deliberations.
Dated: May 15, 2012.
/s/William Alsup
WILLIAM ALSUP
UNITED STATES DISTRICT JUDGE
10
Special Verdict Form
IN THE UNITED STATES DISTRICT COURT
FOR THE NORTHERN DISTRICT OF CALIFORNIA
ORACLE AMERICA, INC.,
Plaintiff,
v.
GOOGLE INC.,
Defendant.
No. C 10-03561 WHA
SPECIAL VERDICT FORM
YOUR ANSWERS MUST BE UNANIMOUS.
Direct Infringement
1. Has Oracle proven by a preponderance of the evidence that Google directly
infringes claims 11, 27, 29, 39, 40, or 41 of United States Patent Number RE38,104?
| Yes (Infringing) | No (Not Proven) |
CLAIM 11: | ________ | ________ |
CLAIM 27: | ________ | ________ |
CLAIM 29: | ________ | ________ |
CLAIM 39: | ________ | ________ |
CLAIM 40: | ________ | ________ |
CLAIM 41: | ________ | ________ |
2. Has Oracle proven by a preponderance of the evidence that Google directly
infringes claims 1 or 20 of United States Patent Number 6,061,520?
| Yes (Infringing) | No (Not Proven) |
CLAIM 1: | ________ | ________ |
CLAIM 20: | ________ | ________ |
3. Has Oracle proven by clear and convincing evidence that Google willfully
infringed one or more claim of an asserted patent? (Answer this question only if above you
answered “Yes” to one or more claims of a given patent.)
| Yes (Willful) | No (Not Proven) |
For the '104 Patent: | ________ | ________ |
For the '520 Patent: | ________ | ________ |
Dated: May ___, 2012.
________________________________
FOREPERSON
2
1154
MORRISON & FOERSTER LLP
MICHAEL A. JACOBS (Bar No. 111664)
[email]
KENNETH A. KUWAYTI (Bar No. 145384)
[email]
MARC DAVID PETERS (Bar No. 211725)
[email]
DANIEL P. MUINO (Bar No. 209624)
[email address telephone fax]
BOIES, SCHILLER & FLEXNER LLP
DAVID BOIES (Admitted Pro Hac Vice)
[email address telephone fax]
STEVEN C. HOLTZMAN (Bar No. 144177)
[email address telephone fax]
ORACLE CORPORATION
DORIAN DALEY (Bar No. 129049)
[email]
DEBORAH K. MILLER (Bar No. 95527)
[email]
MATTHEW M. SARBORARIA (Bar No. 211600)
[email address telephone fax]
Attorneys for Plaintiff
ORACLE AMERICA, INC.
UNITED STATES DISTRICT COURT
NORTHERN DISTRICT OF CALIFORNIA
SAN FRANCISCO DIVISION
ORACLE AMERICA, INC.
Plaintiff,
v.
GOOGLE INC.
Defendant.
Case No. CV 10-03561 WHA
ORACLE AMERICA, INC.’S
ROLLING LIST OF NEXT TEN
WITNESSES
Dept.: Courtroom 8, 19th Floor
Judge: Honorable William H. Alsup
Pursuant to the Court’s Order regarding rolling lists of witnesses (Dkt. 851) and the
parties’ agreement to increase the number of witnesses on the list to ten (Dkt. 884), Oracle
America, Inc. hereby files and serves its current list of its anticipated next trial witnesses.
1. Agarwal, Aditya
2. Astrachan, Owen (by video)
3. Bloch, Josh (by video)
4. Gupta, Vineet (by video)
5. Lindholm, Tim
6. Mitchell, John
7. Page, Larry
8. Reinhold, Mark
9. Rubin, Andy
10. Schmidt, Eric
Dated: May 15, 2012
MICHAEL A. JACOBS
KENNETH A. KUWAYTI
MARC DAVID PETERS
DANIEL P. MUINO
MORRISON & FOERSTER LLP
By: /s/ Daniel P. Muino
Attorneys for Plaintiff
ORACLE AMERICA, INC.
1
1155
KEKER & VAN NEST LLP
ROBERT A. VAN NEST - # 84065
[email]
CHRISTA M. ANDERSON - # 184325
[email]
DANIEL PURCELL - # 191424
[email address telephone fax]
KING & SPALDING LLP
SCOTT T. WEINGAERTNER (Pro Hac Vice)
[email]
ROBERT F. PERRY
[email]
BRUCE W. BABER (Pro Hac Vice)
[address telephone fax]
KING & SPALDING LLP
DONALD F. ZIMMER, JR. - #112279
[email]
CHERYL A. SABNIS - #224323
[email address telephone fax]
IAN C. BALLON - #141819
[email]
HEATHER MEEKER - #172148
[email]
GREENBERG TRAURIG, LLP
[address telephone fax]
Attorneys for Defendant
GOOGLE INC.
UNITED STATES DISTRICT COURT
NORTHERN DISTRICT OF CALIFORNIA
SAN FRANCISCO DIVISION
ORACLE AMERICA, INC.,
Plaintiff,
v.
GOOGLE INC.,
Defendant.
Case No. 3:10-cv-03561 WHA
GOOGLE INC.’S ROLLING LIST OF
NEXT TEN WITNESSES
Dept.: Courtroom 8, 19th Floor
Judge: Hon. William Alsup
Pursuant to the Court’s Order regarding rolling lists of witnesses (Dkt. No. 851) and the
parties’ agreement to increase the number of witnesses on the list to ten (Dkt. No. 884), Google
Inc. hereby files and serves its current list of anticipated next ten trial witnesses:
1. Aditya Agarwal
2. Owen Astrachan
3. Josh Bloch
4. Alan Cox
5. Hiroshi Lockheimer
6. Andy Rubin
Google objects to Oracle’s calling Dr. Mitchell in Phase 3. However, in the event the
Court permits Dr. Mitchell to testify in Phase 3, Google will call Dr. Owen Astrachan.
Dated: May 15, 2012
KEKER & VAN NEST LLP
/s/ Robert A. Van Nest
By: ROBERT A. VAN NEST
Attorneys for Defendant
GOOGLE INC.
1
1156
KEKER & VAN NEST LLP
ROBERT A. VAN NEST - # 84065
[email]
CHRISTA M. ANDERSON - # 184325
[email]
DANIEL PURCELL - # 191424
[email address telephone fax]
KING & SPALDING LLP
SCOTT T. WEINGAERTNER (Pro Hac Vice)
[email]
ROBERT F. PERRY
[email]
BRUCE W. BABER (Pro Hac Vice)
[address telephone fax]
KING & SPALDING LLP
DONALD F. ZIMMER, JR. - #112279
[email]
CHERYL A. SABNIS - #224323
[email address telephone fax]
IAN C. BALLON - #141819
[email]
HEATHER MEEKER - #172148
[email]
GREENBERG TRAURIG, LLP
[address telephone fax]
Attorneys for Defendant
GOOGLE INC.
UNITED STATES DISTRICT COURT
NORTHERN DISTRICT OF CALIFORNIA
SAN FRANCISCO DIVISION
ORACLE AMERICA, INC.,
Plaintiff,
v.
GOOGLE INC.,
Defendant.
Case No. 3:10-cv-03561 WHA
GOOGLE’S BRIEF RE ORACLE’S
FAILURE OF PROOF ON CAUSATION
Dept.: Courtroom 8, 19th Floor
Judge: Hon. William Alsup
Contrary to Oracle’s counsel’s statements in court today, Google has never suggested that
Oracle deserves no remedy for the minimal acts of copyright infringement found at trial. Google
has made only the point that, because the infringing works—nine lines of rangeCheck code in the
two TimSort files and eight decompiled test files that were never used on any Android phone—
are so insignificant, Oracle cannot prove either that it suffered any actual damages or that Google
earned any revenues attributable to the infringement.
This is exactly why the Copyright Act offers the option of statutory damages—to provide
a remedy even where a copyright holder cannot prove actual harm. “Statutory damages are
intended as a substitute for profits or actual damage. When injury is proved but neither the
infringer’s profits nor the copyright holder’s actual damages can be ascertained, an award of
statutory ‘in lieu’ damages is mandatory.” Frank Music Corp. v. Metro-Goldwyn-Mayer, Inc.,
772 F.2d 505, 520 (9th Cir. 1985) (citing Russell v. Price, 612 F.2d 1123, 1131-32 (9th Cir.
1979)). The infringement verdicts here, as to rangeCheck and the test files, are tailor-made for a
statutory damages award, because Oracle hasn’t met and can’t meet the standard for entitlement
to an award of infringer’s profits.
A. To recover any of Google’s profits, Oracle first must prove a causal nexus between
the infringing works—TimSort, ComparableTimSort and the eight test files—and
some identifiable amount of Google revenue.
Google has addressed the basic legal framework regarding an award of infringer’s profits
before, but provides the following, more targeted analysis in response to the discussion at today’s
hearing. The governing legal standard has been consistently applied by the Ninth Circuit for over
a decade: to establish any entitlement to profits, a copyright plaintiff first must offer evidence that
the infringer made some amount of revenue attributable to the copyrighted work that was found
infringed. See 17 U.S.C. § 504(b). Once the plaintiff makes that showing, the burden shifts to
the defendant to prove deductible costs incurred in earning that revenue and, if there are any
profits left over, apportioning those profits to deduct amounts attributable to factors other than the
infringement. See id.
The Ninth Circuit explained this rule most recently in Polar Bear Products, Inc. v. Timex
Corp., 384 F.3d 700, 710-12 (9th Cir. 2004), explaining that, “[a]lthough the statute references
1
only the broad term ‘gross revenue,’ to conclude that a copyright plaintiff need only provide the
company’s overall gross revenue, without regard to the infringement, would make little practical
or legal sense.” Id. at 711. Instead, “the causation element of the statute serves as a logical
parameter to the range of gross profits a copyright plaintiff may seek.” Id. “The standard is
straightforward: a copyright plaintiff is bound to no more and no less than its statutory obligation
to demonstrate a causal nexus between the infringement and the profits sought.” Id. at 712. Even
where an infringer “derived some quantum of profits because its infringement was part of” a
larger part of its business, “it nevertheless remains the duty of the copyright plaintiff to establish a
causal connection between the infringement and the gross revenue reasonably associated with
the infringement.” Id. at 715 (citing On Davis v. The Gap, Inc., 246 F.3d 152, 160 (2d Cir.
2001)) (emphasis added); see also Mackie v. Rieser, 296 F.3d 909, 914-15 (9th Cir. 2002)
(plaintiff first must demonstrate “that the infringing acts had an effect on profits before the parties
can wrangle about apportionment”).
Oracle is wrong to suggest, as it did to the Court today, that an award of infringer’s profits
is mandatory because (1) Google’s Android software contains infringing material, even if only a
tiny amount; and (2) Android is a “revenue-generating product.” Oracle misunderstands how
both copyright damages and Google’s Android business work. Google does not generate any
revenue directly from the Android software. Google gives the software away for free, as an opensource
product. It is only once the Android software is adopted by handset makers and
incorporated onto mobile devices that Google can earn money, when users of Android handsets
perform Google searches, click on Google-hosted ads, or buy applications from GooglePlay
(formerly Android Market). There is no dispute that nearly all of Google’s Android revenues
come from these indirect sales of downstream Google-hosted services on mobile phones, not
direct sales of software. And there is no allegation, let alone a verdict, of copyright infringement
as to any of the ads or applications from which Google makes money directly. Accordingly,
under Ninth Circuit law, all these categories of profits from Android are indirect profits. See
Mackie, 296 F.3d at 914 (defining “direct profits” as those “that are generated by selling an
infringing product”). The Ninth Circuit has held over and over again that a copyright plaintiff
2
may recover indirect profits only if it can establish that those profits have some causal link to the
infringing work. See id. at 914-15; Polar Bear, 384 F.3d at 710-16.
As Google has argued previously, there is no causal nexus here. The jury did not find that
Google’s Android platform infringed Oracle’s Java platform. It found only that two Android
files, TimSort and ComparableTimSort, infringed a single Java file called Arrays.java. See Final
Charge to the Jury (Phase One) [Dkt. 1018] ¶ 29, at 15 (“For purposes of Question No. 3, the
‘work as a whole’ is the compilable code for the individual file except for the last two files listed
in Question No. 3, in which case the ‘work as a whole’ is the compilable code and all the Englishlanguage
comments in the same file.”); Special Verdict Form [Dkt. 1018] at Question 3(a)
(calling for verdict on infringement by TimSort files). The Court later granted judgment as a
matter of law as to eight decompiled test files, ruling that those files infringed eight additional
Java files. May 11, 2012 Order [Dkt. 1123]. These are the infringing works for purposes of any
indirect profits analysis.1 To even get started making out an infringer’s profits case, Oracle must
prove a causal connection between those works and an identifiable amount of Google revenue.
Mackie v. Rieser is the case that controls the outcome here and makes it clear that Oracle
cannot establish any nexus. Mackie is perfectly analogous to this case:
- In both cases, the infringement was a barely noticeable component of a larger work.
In Mackie, it was a single photograph of a copyrighted work incorporated into a
collage on a single page of promotional brochure for the Seattle Symphony. See 296
F.3d at 912-13. Here, it is nine lines of rangeCheck code out of 15 million lines on
the Android platform and eight decompiled test files that never made it onto a phone.
- In both cases, the larger whole that incorporated the small amount of infringing
material was given away for free in hopes of generating downstream revenue. In
Mackie, the promotional brochure was given away by mail to promote Symphony
subscriptions. See id. at 912-13. Here, Google gives away the Android software,
which eventually enables it to host advertising on Android handsets and sell
applications to users of such handsets.
__________________________
1 As Google has noted before, it was Oracle that sought, over Google’s objection, the instruction
deeming individual Android and Java files to be stand-alone works for purposes of the jury’s
infringement analysis. RT 2414:20-2418:13 (Charging Conference). The Court overruled
Google’s objection and gave Oracle the instruction it requested. Id. Oracle undoubtedly wanted
a charge that defined the “work as a whole” narrowly—as individual Java files, not the entire Java
platform—in order to increase its chances of an infringement verdict on its literal copying claims
and decrease the odds that the jury would excuse a minute amount of infringement as de minimis.
It got the infringement verdict that it wanted, but it must play by the same rules with respect to its
damages claims.
3
- In both cases, the plaintiff sought indirect profits. In Mackie, the plaintiff wanted a
cut of the Symphony’s revenue purportedly tied to the promotional brochure that
contained the infringing photo. See id. at 913. Here, Oracle is seeking some of the
downstream revenue Google has made from applications and advertising.
- In both cases, the plaintiff failed to offer any testimony or evidence establishing a
causal link between the minute infringing material and the downstream revenues.
Ultimately, the court held that Mackie had failed to satisfy his burden to establish that the
Symphony generated any gross revenues causally connected to the infringement:
Intuitively, we can surmise virtually endless permutations to account for an
individual’s decision to subscribe to the Pops series, reasons that have nothing to
do with the artwork in question. For example, was it because of the Symphony’s
reputation, or the conductor, or a specific musician, or the dates of the concerts, or
the new symphony hall, or the program, or the featured composers, or community
boosterism, or simply a love of music, or . . . ? In the absence of concrete
evidence, Mackie’s theory is no less speculative than our effort in this paragraph to
enumerate even a relatively short list of the myriad factors that could influence an
individual’s purchasing decisions.
Id. at 916. Even had Mackie been able to offer evidence tending to show that a percentage of the
Symphony’s sales were tied to the infringing brochure, “such a rudimentary analysis cannot
determine how many of those individuals subscribed because of Rieser’s work.” Id. at 916
(emphasis in original). Because the collage that incorporated a photograph of Mackie’s artwork
was “but one page in a multi-page brochure that advertised a series of concerts that were
unrelated to the artwork itself,” the Ninth Circuit flatly rejected Mackie’s theory as “[r]ank
speculation” that was legally insufficient to support a claim for indirect profits. Id. Given the 15
million lines of code in the Android software, and all the features enabled by that software, there
are “virtually endless permutations” in this case “to account for an individual’s decision” to click
on a Google-hosted ad or buy an application through GooglePlay. There is certainly no reason to
think the nine-line rangeCheck function (out of over 15 million lines of code in Android, RT
2179:19-23 (Astrachan)) had anything to do with it—and it is certain the eight test files didn’t,
since they never appeared on any Android handset. RT 1319:15-1320:6 (Mitchell) If the Mackie
photo was a needle in the brochure’s haystack, Android contains many thousands of haystacks.
Oracle has tried to run away from the causal-nexus requirement by citing mostly to cases
involving advertising and promotional materials, see, e.g., Polar Bear, 384 F.3d at 712-13;
Andreas v. Volkswagen of Am., Inc., 336 F.3d 789, 796-98 (8th Cir. 2003); On Davis, 246 F.3d at
4
160, but none of those cases dispute that a nexus is required for recovery of infringer’s profits. In
fact, those cases explicitly affirm that requirement. See Polar Bear, 384 F.3d at 711 (before
apportionment takes place, the copyright plaintiff “must first show a causal nexus between the
infringement and the gross revenue.”); Andreas, 336 F.3d at 796 (“The plaintiff has the burden to
demonstrate a nexus between the infringement and the indirect profits before apportionment can
occur”). Instead, because those cases all involved infringing materials that were the centerpiece
of an advertising campaign directed to promotion of a particular product, the courts reasonably
concluded that the nexus requirement was satisfied. But Mackie was an advertising case as well,
and the lesson of Mackie is that, when infringing material is so minute and barely identifiable,
even in a promotional piece, a court will not simply assume a link between the infringement and
indirect profits. Such a link has to proved with actual, meaningful evidence.
This settled legal framework makes clear that Oracle has not done nearly enough to shift
the burden to Google. Oracle cannot rely on Google’s gross revenue generally, or even Google’s
gross revenue from the Android platform as a whole; it must identify some amount of gross
revenue that is causally linked to the infringement. “Only then would [the infringer] bear the
responsibility for apportioning profits.” Polar Bear, 394 F.3d at 715. As Judge Posner explained
almost thirty years ago,
It was not enough to show [defendant’s] gross revenues from the sale of
everything he sold, which is all, really, that [plaintiff] did. If General Motors
were to steal your copyright and put it in a sales brochure, you could not just put a
copy of General Motors’ corporate income tax return in the record and rest your
case for an award of infringer’s profits.
Taylor v. Meirick, 712 F.2d 1112, 1122 (7th Cir. 1983). This rule bars Oracle’s strategy here.
B. Oracle has no witness who could offer any testimony to establish the required nexus
between Google’s revenues and the infringement.
Here, Oracle has never even attempted to establish, at any stage of the case, that Google’s
revenues are causally linked to rangeCheck or the test files. Its technical expert Dr. Mitchell
offered opinions that rangeCheck and the test files were identical to, and likely copied from, the
Java source files. Mitchell Opening Report ¶¶ 233-239 (rangeCheck); id. ¶¶ 241-248 (test files).
He opined that rangeCheck, at least, appeared on handsets, id. ¶ 240, though he never expressed
5
any opinion that it was important to handset functionality. The closest he came to expressing any
opinion that rangeCheck has any value were his opinions that (1) rangeCheck was “qualitatively
significant to” the Arrays.java file, because “it is called nine times by other methods in the class,”
id. ¶ 235; and (2) “it is certainly possible that some amount of trial and error went into figuring
out how to arrange the tests in this code so that the most informative error condition is reported.”
Mitchell Opposition Report ¶ 86. Even then, he conceded that “I have not studied the use of this
code in any detail.” Id. This is hardly a ringing endorsement. With respect to the test files, his
opinion about their value was limited to anodyne statements that software testing is important and
“clearly someone or some group of engineers found it useful to produce them.” Id. ¶ 95. Nothing
in his testimony vouches for any contribution by either rangeCheck or the test files to Android as
a whole, much less provides any basis for quantifying that value or separating out the contribution
of these files from the millions of other lines of code on the Android platform.
That’s it for Oracle’s expert testimony on these files. Oracle’s damages expert, Dr. Iain
Cockburn, could have tried to calculate a gross revenue figure linked to rangeCheck or the test
files, but he never made the attempt. His first report effectively ignored copyright damages
entirely, stating only that “because Android infringes the expression embodied in Oracle’s
copyrighted class libraries or APIs, Oracle may also be entitled to receive Google’s profits
attributable to the infringement.” First Cockburn Report (May 20, 2011) ¶¶ 349-50 (emphasis
added). In other words, to the extent Dr. Cockburn drew any causal link between any alleged
infringement and Google revenues, it was a link between only the allegedly infringed API
packages, not rangeCheck or the test files. Dr. Cockburn’s second report offered an opinion only
as to alleged gross revenue from all Android ad and applications sales, and again purported to link
that revenue only to Google’s use of the Java API packages. Second Cockburn Report (Sept. 15,
2011) at 186-88, ¶¶ 463-68, & Ex. 22 (Android gross revenue calculation through 2011).
In response to Dr. Cockburn’s repeated failure to offer any opinion at all assigning a value
to any of the allegedly literally copied code—including rangeCheck and the test files—Google
asked the Court to preclude Dr. Cockburn from offering such testimony at trial. Google Supp. Br.
(Oct. 20, 2011) [Dkt. 549] at 14-15. The Court agreed, barring Oracle from offering any expert
6
opinion on damages for any of Oracle’s literal copying claims, including rangeCheck or the eight
decompiled test files:
Dr. Cockburn has not adequately valued that [allegedly copied] code in his report
and cannot do so at trial. This order holds that the jury will be instructed that if
Google is found not liable for infringing the selection, arrangement, and structure
of the API packages, then Dr. Cockburn’s copyright damages analysis is
inapplicable.
Jan. 9, 2012 Order [Dkt. 685] at 10. In sum, with respect to Oracle’s experts, Dr. Mitchell didn’t
offer any opinions about a causal link between the copied files and Google revenues, and Dr.
Cockburn is barred from even trying.
In the end, the only thing a review of Oracle’s expert reports reveals is that, before failing
to get an infringement verdict on its main copyright claim, neither Oracle nor its experts ever
contemplated the idea that Google’s use of rangeCheck or the test files could have had any
material effect on Google’s revenues. Instead, Oracle made the legitimate tactical choice to focus
both its liability and damages cases on its claim that Google infringed the structure, sequence, and
organization of 37 Java API packages. But that decision has consequences now. Moreover, not
only did Oracle prepare no expert and disclose no fact witness on this subject, it never disclosed
the underlying damages theory at any time during discovery.
Oracle first disclosed its damages theory, as Rule 26(a) requires, in its December 2, 2010
initial disclosures. There, Oracle did not refer to the rangeCheck method or the decompiled files
at all. Indeed, the only fact Oracle disclosed relating to damages at all was that Eric Schmidt had
said Android’s revenues were “large enough to pay for all of the Android activities and a whole
bunch more.” See Declaration of David Zimmer (“Zimmer Decl.”) in Support of Google’s
Motion for Summary Judgment [Dkt. 1125] Decl. Ex. A (Oracle’s 12/2/10 Disclosures) at 7:6-7.
Oracle also noted that it had not completed its damages calculation, because “it will require
expert evaluation of information in Google’s possession.” Id. at 6:10-11. Oracle twice
supplemented this response, but neither supplemental response referred to the rangeCheck
method or the decompiled files, much less stated any facts suggesting a causal link between that
material and any Android revenue. See id. Exs. B (Oracle’s 6/3/11 Disclosures) & C (Oracle’s
8/10/11 Disclosures). Both supplemental responses referred to Oracle’s damages expert’s reports,
7
which, as noted above, omitted any discussion of literal copying damages. See id.
Oracle’s failure to disclose any evidence supporting this theory continued throughout the
discovery period. On January 6, 2011, Oracle answered Google’s first set of interrogatories,
including Google’s Interrogatory No. 1, which asked for a detailed statement of “Oracle’s factual
bases for each allegation of damage or harm that Oracle claims to have suffered as a result of any
act or omission of Google.” Zimmer Decl. Ex. D (Oracle’s 1/6/11 Interrogatory Responses) at
1:7-8. With regard to its “claim for recovery of Google’s profits attributable to the infringement,”
Oracle disclosed various facts about Google’s revenues and business model, but stated no facts
tying those revenues to rangeCheck or the eight decompiled files. Id. at 3:5-4:8. Oracle also
noted that it would provide further information about its claimed damages, including about
“disgorgement of Google’s profits from the infringement,” when it served its damages expert’s
report. Id. at 5:24-6:4. Oracle twice supplemented this response, but neither supplemental
response disclosed any facts related to the rangeCheck method or the decompiled files. Zimmer
Decl. Ex. E (Oracle’s 4/25/11 Supp. Interrogatory Responses) at 5:11-6:16; id. Ex. F (Oracle’s
7/29/11 Supp. Interrogatory Responses) at 6:1-18.
In short, Oracle has never disclosed any intent to rely on testimony from any fact witness
to establish a nexus between Google’s infringement and its Android-related revenues. Instead,
Oracle has always taken the position that it would rely on expert testimony to connect the dots
between any alleged infringement and Google’s revenues, but, as already noted several times, Dr.
Cockburn never connected those dots and eventually the Court ruled he was forbidden from
trying. To the contrary, Dr. Cockburn only ever opined that a causal link exists between Google’s
Android-related revenues and Google’s use of the structure, sequence, and organization of 37 API
packages in the J2SE platform—material Google was not found liable for infringing. Third
Cockburn Report (Feb. 9, 2012) at 227-37, ¶¶ 624-649.
C. All the evidence in the record shows there is no causal link between Google’s use of
rangeCheck or the eight test files and any Android revenues.
Although the Court invited Oracle to make an offer of proof as to what evidence it could
offer to prove a causal link, Google is confident Oracle will come up empty. In addition to
8
having no expert to testify on the subject and failing to disclose any facts or witness in discovery
who would offer such testimony, the evidence already in the trial record makes clear that
rangeCheck and the eight test files were always completely insignificant to Android.
1. The trial record shows that rangeCheck has no link to Android revenue.
To begin with, as the Court is well aware by now, rangeCheck makes up a tiny fraction of
the Android platform in a quantitative sense. It is nine lines of source code out of a platform that
contains more than 15 million lines, RT 2179:19-23 (Astrachan), amounting to .00006% (or six-ten
millionths) of Android. That does not qualify even as de minimis.
But rangeCheck is indisputably insignificant as a qualitative matter too. The testimony at
trial, from both sides of the aisle, has been unequivocal that rangeCheck is a “very short simple
method” that checks three parameters of an array: the starting point, the end point, and that the
end point is greater than the starting point. RT 813:7-8, 815:5-9 (Bloch). Josh Bloch, who wrote
rangeCheck, testified that “[a]ny competent high school programmer could write” that method.
RT 815:13-16 (Bloch). Even Oracle’s expert Dr. Mitchell conceded that “a good high school
programmer” could write rangeCheck with guidance. RT 1316:24-25 (Mitchell).
In trying to conjure the illusion that rangeCheck is important during this afternoon’s oral
argument, Oracle’s counsel misstated two established facts about those nine lines. Google
assumes that Oracle will correct the record as to both issues in its brief tonight, but the evidence
in the record on those points is as follows:
First, Oracle’s counsel contended that rangeCheck “was something that was important to
TimSort and ComparableTimSort, that did have a significant performance advantage.” RT
4228:11-13. This is false. The only testimony in the record, from any witness, shows that, in
addition to being trivial to create and easily replicable by a beginner, rangeCheck offers no
performance benefit to Android. Josh Bloch, who wrote TimSort and ComparableTimSort,
testified that the TimSort files are useful to Android because they make arrays sorts much faster.
RT 812:19-813:3 (Bloch). But Bloch also made clear that not one bit of that performance
improvement is due to rangeCheck, as opposed to the other 900-plus lines of code in those files.
RT 814:1-4 (Bloch).
9
Second, Oracle’s counsel suggested that Oracle could link rangeCheck to Google’s profits
for Android because those nine lines of code “benefited Google because it accelerated the time
frame that Android could be finished” and helped Android get to market more quickly. RT
4221:21-22; see also id. 4225:15-20. That is also counterfactual, given the undisputed that
rangeCheck was not even in Android when Google announced the platform in November 2007.
Neither was rangeCheck in Android when the first Android phones were released in October
2008 and Google made its code available to handset partners for inclusion on phones. Bloch did
not even join the Android team until December 2008 or January 2009. RT 733:8-11 (Bloch). He
finished TimSort at some point in early 2009, at which point he contributed that file both to Sun’s
OpenJDK project and to Android. RT 822:4-9 (Bloch).
Further, rangeCheck has been out of the current release of Android for about a year. RT
825:8-19 (Bloch); RT 1700:25-1701:10 (Rubin). The proven facts that both the platform’s initial
adoption by handset makers and carriers and its recent growth happened in the absence of
rangeCheck are additional reasons why no reasonable jury could link any of Android’s profits to
the temporary inclusion of those nine lines in Android.
In its previous briefs, Oracle has cited Dr. Mitchell’s testimony that the rangeCheck code
is allegedly called 2,600 times when powering on a smartphone or starting an emulator. Oracle
Br. [Dkt. 1106] at 3:13-17 (citing RT 1329:5-21 (Mitchell)). This is vacuous. It establishes
nothing to cite an arbitrary number of calls to a given method in the absence of context, and
neither Dr. Mitchell nor any other witness testified whether rangeCheck was called any more or
less than any other method in the Android software, during the startup sequence or any other
time. Given the capabilities of modern computer microprocessors, 2,600 calls to a given function
during the startup sequence of a smartphone could be a low number relative to other functions.
There is nothing in the record to enable the Court or a jury to tell either way. Equally, just
because a software function is called frequently does not mean it is important; it would stand to
reason that a trivial nine-line piece of code that accomplishes a Programming 101 parameter test,
like rangeCheck does, might be invoked fairly frequently. Dr. Mitchell never opined that there is
any correlation between the number of calls to a function and its significance, much less that
10
rangeCheck itself is significant. He certainly did not say that rangeCheck offered a performance
boost to Android—and Bloch, who wrote it, made clear it does not.
The record already shows that rangeCheck was an utterly trivial (and temporary) part of
Android. Oracle has no evidence to dispute what the Court has already heard and cannot show
any nexus between rangeCheck and any Google revenues.
2. The trial record shows that the eight decompiled test files have no link to
Android revenue.
Given its comments at today’s hearing, Oracle appears to believe that its claim for profits
is stronger as to the eight test files than as to rangeCheck. In fact, its test-files claim is even
weaker, for an obvious reason: those eight test files never appeared on a single Android handset.
RT 1318:20-1320:6 (Mitchell). In fact, there is no evidence in the record, and Oracle has never
disclosed any during discovery, to suggest that those eight test files were ever used by Google or
anyone else during the process of developing or testing the Android software or any Android
handsets. But even if Oracle could show they were used by some handset maker for some testing
function, that would not come close to establishing a nexus. Because the files never appeared on
a handset, they could not have formed the basis of any consumer’s decision to buy a handset,
much less assisted any consumer in accessing the downstream Google-hosted ad and applications
from which Android generates its revenue.
Oracle has also argued that Google must have thought the test files were valuable because
Google deliberately copied them. RT 4227:14-25. Again, this is false. The record establishes
that the files were not decompiled by Google; they were contributed by Noser, a third-party
contractor. RT 1698:11-1699:1 (Rubin); id. 1810:11-13 (Bornstein). In its contract with Noser,
Google had expressly instructed Noser not to decompile or copy other parties’ protected files, but
only to do original work or use open-source code. TX 2765 at 11; RT 1696:21-1698:10, 1701:18-
21 (Rubin); RT 1798:17-1803:6 (Bornstein). There is no evidence that Google intended these
materials to end up in Android or knew what Noser had done. Google removed the test files from
the current version of Android once Oracle alerted Google that they had been decompiled rather
than written from scratch. RT 1807:25-1810:1 (Bornstein).
11
Neither is there any merit to Oracle’s argument that, even though the eight test files were
“not in Android … there’s no doubt it accelerated Android” in getting to market. RT 4228:1-3.
This is made up out of whole cloth. Even if Oracle could prove the test files were used by Google
or anyone else, which it can’t, it has no evidence or expert testimony proving that the test files
helped Android get to market faster and, if so, by how much and what financial impact that might
have had. Oracle cannot simply look to approximations of Google’s present-day Android
revenue, as it suggested at today’s hearing, and conclude that getting Android to market even two
days earlier in 2007 would have netted Google some large amount of money. RT 4222:1-16.
In any event, the record disproves that Google obtained any time or cost savings because
of Noser’s decompilation of the test files. Two of the three Google-Noser statements of work in
the record, TX 30 (Statement of Work for class libraries) at 8 & TX 70 (SOW for Compatibility
Test Suite) at 10, show that Google paid Noser flat rates and required set deliverable dates. In
other words, whatever Noser may have done in performing these contracts, it would not have
saved Google any time or money. The third Google-Noser contract, TX 74 (SOW for code
integration), did not have set deliverable dates, but it capped Google’s payment obligation at
$60,000. To the extent Noser cut corners in performing that contract, the most Google could have
saved would have been $60,000—an amount consistent with a modest statutory damages award.
For all the above reasons, Oracle both is required to, and cannot, prove the required causal
nexus between Google’s infringement of the nine-line rangeCheck function and/or the eight test
files and Google’s revenues from Android. All the evidence in the record points the other way.
Oracle still may elect statutory damages at any time prior to judgment, see 17 U.S.C. § 504(c)(1),
but it is not entitled to an award of infringer’s profits.
Dated: May 15, 2012
KEKER & VAN NEST LLP
/s/ Robert A. Van Nest
By: ROBERT A. VAN NEST
Attorneys for Defendant
GOOGLE INC.
12
1157
MORRISON & FOERSTER LLP
MICHAEL A. JACOBS (Bar No. 111664)
[email]
KENNETH A. KUWAYTI (Bar No. 145384)
[email]
MARC DAVID PETERS (Bar No. 211725)
[email]
DANIEL P. MUINO (Bar No. 209624)
[email address telephone fax]
BOIES, SCHILLER & FLEXNER LLP
DAVID BOIES (Admitted Pro Hac Vice)
[email address telephone fax]
STEVEN C. HOLTZMAN (Bar No. 144177)
[email address telephone fax]
ALANNA RUTHERFORD (Admitted Pro Hac Vice) [email address telephone fax]
ORACLE CORPORATION
DORIAN DALEY (Bar No. 129049)
[email]
DEBORAH K. MILLER (Bar No. 95527)
[email]
MATTHEW M. SARBORARIA (Bar No. 211600)
[email address telephone fax]
Attorneys for Plaintiff
ORACLE AMERICA, INC.
UNITED STATES DISTRICT COURT
NORTHERN DISTRICT OF CALIFORNIA
SAN FRANCISCO DIVISION
ORACLE AMERICA, INC.
Plaintiff,
v.
GOOGLE INC.
Defendant.
Case No. CV 10-03561 WHA
ORACLE’S OFFER OF PROOF ON
LITERALLY COPIED CODE FILES AND
INFRINGER’S PROFITS
Dept.: Courtroom 8, 19th Floor
Judge: Honorable William H. Alsup
Oracle submits this offer of proof in accordance with the Court's directive this
afternoon, Tuesday May 15, 2012. However, Oracle reserves its position that,
because Android infringes and Android generates revenue, binding appellate case
law provides the proper "causal nexus" that the plaintiff must demonstrate is
between the infringing product (Android) and the revenues, not between the
copyrighted work (the code files) incorporated in that product and the revenues.
(See Dkt. No. 1106 (Oracle's Brief in Response to Court's Questions); Dkt. No.
1135 at 4 — 12 (Oracle's Opposition to Google's Motion for Summary Judgment);
Dkt. No. 1149 at 1 — 5 (Oracle's Opposition to Google's Motion in Limine to
Exclude Android Revenues).) Under the Copyright Act, it is up to Google, not
Oracle, to demonstrate that Google's profits are not due to the code files. 17
U.S.C. § 504(b).
To carry its burden in showing gross revenues, 17 U.S.C. § 504(b), Oracle will
not submit Google's overall gross revenues. Instead, Oracle will show only
Android gross revenues, including only revenues from advertisements on Android
devices, direct-to-consumer sales of Nexus devices, and revenues from the app
store (Android Market, now GooglePlay). These revenues are carefully tailored to
the infringement and therefore carry Oracle's burden of causation under settled
case law. See, e.g., Davis v. The Gap, Inc., 246 F.3d 152, 160 (2nd Cir.
2001). Oracle will do so with reference to documents Google itself generates,
including the Android Profit & Loss Statement and the Android OC Quarterly
Reports (which now may exist under a different name). Even more granularly,
Oracle will offer proof consisting of (1) for TimSort, ComparableTimSort, or
rangeCheck, revenues relating to distribution of devices including the versions
of Android on which rangeCheck was distributed, and (2) for the decompiled
versions, revenues relating to the distribution of devices after the time the
files were made available for use.
Google has refused to produce up-to-date data that enable us to estimate this up
to the time of trial, and accordingly we intend to offer the best estimates
available.
A. Google's use of decompiled test files contributed to the success of, and
profits from, Android.
1. Google's use and copying of the decompiled files contributed to the
profitability of Android by speeding up the development process, ensuring
quality, reducing development costs, helping Google ensure that Android devices
were well-tested and meet performance and functionality
1
requirements, and assuring Google of the presence of test files that themselves
were widely used and known to be reliable.
2. The decompiled files are not merely test files; they are the default
implementation of the security functions in Java.
- Dr. Reinhold will testify that the eight decompiled files are part of Sun's
security architecture that validates security certificates.
- Professor Mitchell testified that the decompiled files relate to "access
control lists, which are a standard mechanism in computer security to govern
access to a file or a network or other resource." (Mitchell at RT
1329:24-1330:2)
- Professor Mitchell also referred to them as the "default implementation for
the security functions." (Mitchell at RT 1330:10-11.)
- Rubin wrote Larry Page on October 11, 2005 that one reason that Google was
"making Java central" to Android was "Java has a suitable security
framework." (TX 7)
3. Google has not offered any affirmative evidence that the decompiled files are
limited to use as test files.
- No witness has testified that the decompiled files are used as test files in
Android.
- Even though Mr. Rubin testified that the "majority of the test files came
from Noser" he never testified that the eight decompiled files were test
files and that those eight decompiled files came from Noser. (Rubin at RT
1701:18-25.)
- Oracle will elicit testimony from Google about how the eight decompiled
files were developed and used by Android.
4. The use of the decompiled test files accelerated the time when Google
received the Android code.
- The eight decompiled files consist of at least 467 lines of code. (/See/ TX
1031 — 1038.)
- Google's expert, Dr. Astrachan, stated that there are 142 Android test files
in his opening report. (Astrachan Report ¶ 166.)
- Dr. Reinhold will testify that depending on the engineer's experience and
familiarity with Java, creating these eight files would likely take weeks.
2
- For example, the PolicyNodeImpl class alone is intricate and would likely
take days if not weeks to write from scratch because it requires substantial
understanding of security certificates and all the surrounding code just to
get started.
- As the Court has previously held in this case, whether writing the test
files another way would have achieved the same speed is irrelevant to the
infringer's profits inquiry. (See Dkt. No. 632 at 6-7.)
5. If Google had not used Oracle's copyrighted files, Google would have had to
spend time and resources to write its own test files.
- All of the decompiled files were copyrighted and contained the statement:
"Copyright 2004 Sun Microsystems, Inc. All rights reserved. SUN
PROPRIETARY/CONFIDENTIAL. Use is subject to license terms." (/See/ TX 623.2
(PolicyNodeImpl.java); TX 623.3 (AclEntryImpl.java); TX 623.4
(AclImpl.java); TX 623.5 (GroupImpl.java); TX 623.6 (OwnerImpl.java); TX
623.7 (PermissionImpl.java); TX 623.8 (PrincipalImpl.java); TX 623.9
(CodeSource.java).)
6. As Prof. Mitchell also testified, even if these decompiled files were used
only as test files, using them would assist Google to speed up the development
process, ensure quality, and scale back on costs.
- He stated: "I think in the software development process, code is written and
then tested. And by many measures the testing and quality assurance process
can be twice as time consuming or twice as expensive as coding originally.
So testing is a very important part of the software development. It's
expensive. And software companies want to do it correctly so that the code
that they ship is bug free and usable to their customers. (Mitchell at RT
1330:17-24)
- "[I]f this helped them test other code they were developing, and speed up
and lessen the cost of testing and quality assurance, then that would have a
big value to them." (Mitchell at RT 1331:3-5.)
7. The use of the decompiled files enabled Google, among other things, to ensure
that Android devices were well-tested and perform well.
3
- At his deposition, Google's expert, Dr. Astrachan stated that software
testing is "a very important component of developing software" and that "I
think most people would agree that testing software and having files
specifically for testing is good engineering practice." (Astrachan Dep. Tr.
160:3 — 17.)
- Rubin at RT 1698:11-1699:1
- As the Court has previously held in this case, whether other test files,
developed independently, would have served this purpose as well is
irrelevant to the infringer's profits inquiry. (See Dkt. No. 632 at 6-7.)
8. Google reverse-engineered Sun's class files and used the "decompiled" files
in the development of Android. (Mitchell at RT 1260:21 — 1261:3.)
9. Google used Noser to provide additional resources and accelerate the
competition of Android.
- On March 28, 2007, Google hired Noser to deliver a package of Java
libraries. /See/ TX 30 (Statement of Work between Google and Noser, dated
March 28, 2007)
- On April 19, 2007, Andy Rubin wrote to Alan Eustace regarding the "Noser
agreement": "This is our final java solution — consultants to take our java
libraries as a starting place, and bring our java classes up to J2SE spec,
in a clean room environment. They have signed up to a pretty aggressive
schedule for quite a bit of work. This deal replaces the $18M approved
acquisition that we decided to pass on. Barring any unforeseen surprises, I
think this is our last big deal ($4M)." (TX 438.)
10. The decompiled files are still available on Google's website (in earlier
versions of Android).
- On October 30, 2010, Bornstein deleted the PolicyNodeImpl.java file in
Froyo. (TX 773; see also TX 896.1 (decompiled code for PolicyNodeImpl from
Java SE) and TX 1031 (identical decompiled code for PolicyNodeImpl from Froyo).)
- On January 13, 2011, Bornstein deleted the AclEntryImpl files in Froyo. (TX
770; see also TX 896.3 (decompiled code for AclEntryImpl files in Java SE)
and TX 1033 (identical decompiled code for AclEntryImpl files in Froyo).)
4
- Bornstein admits that the files are still available to the public.
(Bornstein at RT 1832:3-10 ("THE COURT: Isn't it true that within recent
months you could still go on the Google website and find these very files
with the same code in there? True or not? THE WITNESS: You can look at the
history and see those files. THE COURT: So it's there, available to the
public. True? THE WITNESS: Fair enough.").)
B. Google's use of TimSort and rangeCheck contributed to the success of, and
profits from, Android.
1. As discussed below, rangeCheck contributed to the profitability of Android in
a number of ways. RangeCheck is a necessary component of Timsort, which in turn
provides significant improvements — by Josh Bloch's estimates, a 20x improvement
— to the performance of Android devices. In addition, rangeCheck itself is
valuable to Android in that Bloch specifically chose to include rangeCheck in
Timsort because he wanted to include a program that would have the behavior and
throw the exceptions expected from the Java version of Timsort. Further, as Dr.
Mitchell testified, rangeCheck is an uncommonly important method, receiving 2600
calls during boot up of the device alone. Moreover, rangeCheck has been
installed on actively used Android phones, generating revenues for Google, for
over two years.
2. TimSort provides an important function that enhances the performance of
Android, especially with respect to applications that require a lot of sorting.
(TX 184: "I am currently working on a drop-in replacement for Harmony's sort
function, which has demonstrated a huge up to 20X performance improvements on G1
hardware. This will be my first contribution to Android.")
3. TimSort is a useful part of Android because it makes arrays sort much faster.
- Josh Bloch testified at trial: "Seeing a speed up 20 times faster was not
uncommon. I've seen things even more than that and, you know, twice as fast
is a good sort of overall estimate if you average everything." (RT 812:19 —
813:3.)
- At his deposition, Mr. Bloch testified regarding use of Rangecheck "if there
were an application that sorted a lot of data, it could make it
significantly faster." (Bloch Dep. at 163:13-164:19)
4. It was important to Bloch that rangeCheck be identical to code in the Java
platform so that
5
it would throw the same exceptions and behave in the same way as the Java code
he copied. At his July 8, 2011 deposition, Mr. Bloch testified that to provide
the performance boost, it was necessary that the rangeCheck that appears in
Android be identical to Sun's Java rangeCheck:
Q. So why would RangeCheck be the one that requires the signature to be similar?
A. Because it is the only piece of functionality that TimSort shares with
the remainder of arrays, java.util.arrays. TimSort is a 700 and -- you know,
it's a big long file, and the only functionality that it shares is this
little function here, and it is very much in the interest of the users of
the new sort that it behave exactly like the old sort. You want it to throw
exactly the same exception. You want it to actually emit the same prose. You
want that text to be the same.
So, you know, it's the one where it makes sense to do it. Everything else
derives from Tim Peters' implementation. And, you know, here is a little
piece of the interface that is specific to Java that doesn't exist in C.
(Bloch Dep. at 181:21-182:11)
5. Android as distributed in 2009, 2010 and 2011 included Oracle's copyrighted
work (rangeCheck) (Anticipated testimony of Rubin, Mitchell, and Bloch)
6. rangeCheck is a useful piece of code that is called during different Android
functions.
- Prof. Mitchell conducted an analysis into the significance of rangeCheck to
other code in the same class file. (RT (Mitchell) 1329:5 — 11.)
- Prof. Mitchell found that a number of other source code in other files
called on rangeCheck. (RT (Mitchell) at 1329:5 — 14.)
- Prof. Mitchell also did an experiment in which he counted the number of
times that rangeCheck was called in booting up a phone, and found that the
function was called 2,600 times just in powering on the device or starting
the emulator: "a pretty big number for the number of calls to this
function." (RT (Mitchell) at 1329:5 — 21.)
7. From at least early-2009 through mid-2011, Android included rangeCheck.
(/See/ TX 186 (2/5/09 email stating that the Cupcake Harmony arrays sort is
being replaced with TimSort); TX 109 (copy of Android code copyrighted 2008
containing TimSort); Bloch Dep. 170:2-11; Bloch at RT 822:4 — 5 (TimSort and
ComparableTimSort finished in early 2009).)
6
8. Though Google claims that it has removed rangeCheck from the latest release
of Android, Google has admitted that the previous releases of Android that
include rangeCheck are still available on Google's website. These releases
(including the infringing rangeCheck code) continue to be used by Android
handset manufacturers. (See March 28, 2012, Hearing Tr. 24:10 — 25:17;
Bornstein at RT 1832:3 — 10.)
9. Dr. Mitchell noted that rangeCheck was a "useful" component of the library it
was in, and that there was some "subtlety" to the code. (Mitchell at RT
1316:12-1317:5.) Bloch himself admits "the code is reasonably complex as its
stands." (TX 186.)
10. Bloch knew that Sun had copyrighted rangeCheck. (Bloch Dep. at 175:21-176:7)
11. Bloch copied because he thought it would be "good engineering" to do so.
(Bloch at RT 754:9-16; Bloch at RT 753:23-25).
12. Google does not deny copying. (Google Opening RT 265:4-24; Bloch at RT at
827:5-17; see also RT 1254:9-1255:21 (Mitchell))
13. Copying rangeCheck saved Google time — and time was very important to
Google. (Anticipated Schmidt, Bloch, and Mitchell testimony) (See Section D,
below)
14. Google knew it was wrong (and against company policy) to use people with
knowledge of Sun's intellectual property to develop Android code.
- Google would not have lightly violated company policy and used someone like
Bloch to develop Android Code unless Google believed it was important to do
so and that the benefit was worth it.
15. Google knew it was illegal (and against company policy) to literally copy
code from Sun's implementation of Java in developing Android.
- Google's willingness to do so, by allowing engineers with past Sun and Java
experience, corroborates the value of copying to Google and Android.
- Google would not have lightly violated company policy (and the law) and used
sun's copyrighted code unless Google believed it was important to do so and
that the benefit was worth it.
7
16. Google still makes rangeCheck available on its website. (Bornstein at RT
1832:3 — 10.)
17. Dr. Mitchell's unrebutted testimony shows that the code is actually still
available on millions of phones, including Samsung phones. (Mitchell at RT
1255:22-1256:4; 1263:11-1264:23.)
C. The jury should be able to infer value from willfulness.
1. Google as an organization prides itself on its commitment to ethical behavior
and protection of intellectual. (Anticipated Schmidt, Page, and Rubin testimony)
2. Google's public identity as a company is reflected in its well-known motto,
"Don't be evil. (Anticipated Schmidt, Page, and Rubin testimony)
3. Google agrees that protection of intellectual property is critical to its
business. At his deposition on August 23, 2011, Google chairman and former CEO
Eric Schmidt testified as follows:
Q. Now, as a general proposition, Google in general, and you in particular,
believe that intellectual property should be protected; correct?
A. I do.
Q. And that includes both patents and copyrights; correct?
A. Of course.
Q. And you believe that protection of intellectual property is critical not
only to your business but to software and hardware innovation generally;
correct?
A. I do and we do.
(Schmidt Depo. Tr. 87:24-88:10)
4. Google witnesses admitted that it would be improper to copy code, including
rangeCheck. (Bloch Dep., Bornstein, others)
5. Google would not risk its brand and reputation by engaging in infringement
unless the benefits of doing so were substantial.
6. In its most recent 10-K filing, Google stated: "Maintaining and enhancing the
'Google' brand is critical to expanding our base of users, advertisers, Google
Network Members, and other partners." (TX 1216 at p. 14.)
7. Despite the risk, Google copied knowingly, deliberately, or with heedless
disregard for Sun's intellectual property rights.
8
8. On January 6, 2009, Android team member Hiroshi Lockheimer sent an email to
Android engineers Dan Bornstein and Bob Lee in which Mr. Lockheimer wrote: "I'm
a little nervous about signing Noser up to do any more work for us — but that's
from a purely business perspective. Those guys (their management team) are super
shady." (TX 281)
9. The contracts between Google and Noser provided that Noser would be paid a
flat fee for the work that it did for Google. (TX 30, 70, 74; anticipated Rubin
testimony)
10. On April 19, 2007, Rubin emailed Alan Eustace of Google about the Noser
contracts, stating that Noser would be paid $4 million and that "They have
signed up to a pretty aggressive schedule for quite a bit of work. This deal
replaces the $18M approved acquisition that we decided to pass on." (TX 438)
11. Noser copied eight separate Java files, in their entirety, by decompiling
them. (RT 1257:3-1262:1)
12. At trial, Dr. Mitchell testified as follows:
Q. So in a nutshell, what is decompilation?
A. Decompilation is undoing the work of the compiler to get the source code
back from the class file.
Q. And why would somebody who wanted to copy code go through this exercise?
A. It's a quick and easy way to get source code if you need it, if you have
the class files at your disposal.
(Mitchell at RT 1257:14-20)
13. At trial, Dr. Mitchell testified as follows:
Q. In particular, with respect to decompilation, Dr. Mitchell, could that
happen by accident?
A. No, someone has to decide to do that. Basically, I have to decide to
cheat in a sense and produce your source code by decompiling someone else's
class file. (RT 1265:11-15)
14. At trial, Bornstein testified as follows:
Q. In fact, Josh Bloch, who created the two files above the set that you
deleted, Timsort and ComparableTimSort, he had prior Java knowledge and was
assigned to work on the Android core libraries; wasn't he, sir? [Overruled
objection]
Q. Josh Bloch had prior Java knowledge; correct, sir?
A. That's right.
9
Q. And he was assigned to work on the Android core libraries; wasn't he, sir?
A. That's correct.
(RT 1860:13-1861:1)
15. Google employee Josh Bloch copied code from arrays.java to create the
virtually identical rangeCheck code in Android. (Bloch at RT 755:6-16; TX 1092;
TX 794; TX 623.1, TX 46.27; TX 46.28.)
16. The code that Bloch copied bears copyright notices. (TX 623.1 (arrays.java
code file, which states: "Copyright 2004 Sun Microsystems, Inc. All rights
reserved. SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.")
17. Bloch testified at trial as follows:
Q. Now, you were aware that while you were at Sun, that Sun regularly and
routinely attached copyright notices to the code that it was writing;
correct, sir?
A. Yes, I was.
Q. And it attached copyright notices to the documentation it was publishing,
correct, sir?
A. Yes.
Q. You were aware Sun was asserting copyright protection over its programs;
correct, sir?
A. Yes, I was aware of that.
(RT 756:9-18)
18. On December 16, 2008, Bloch emailed Android head Andy Rubin asking to be
added to the Android team. In that email, Bloch wrote: "I am currently working
on a drop-in replacement for Harmony's sort function which has demonstrated a
huge (up to 20x) performance improvement on G1 hardware: [hyperlink omitted]
This will be my first contribution to Android." (TX 184)
19. Shortly thereafter, Rubin approved adding Bloch to the Android team, despite
Rubin's knowledge that Bloch's involvement with the JCP and direct experience
with Java code created a "conflict." On January 27, 2009, Rubin and Eric Chu
exchanged emails in which they wrote as follows (TX 1060):
Chu: "Now that Josh is part of the Android team, what's your perspective on
his involvement with Java and Sun? He is quite active both within Google and
on the JCP."
10
Rubin: "Scale it back? I dont [sic] know. Seems like a conflict."
Chu: "Yup. That's why I mentioned it. Who should talk to him. Danfuzz? [Dan
Bornstein] If you agree, I can talk to Dan about this."
Rubin: "Okay."
Chu: "Talked to Dan. He'll keep an eye on it. He said you already approved
Josh's current Java activities before he transferred."
20. Bloch testified at trial that no one at Google ever discussed the conflict
with him. (RT at 755:17-756:8)
21. This and other evidence will show that Google cut corners in dealing with
Sun's intellectual property, despite the importance of Google's own reputation
and Google's own commitment to intellectual property, because it expected the
advantages of even very small gains in performance and time to market to yield
substantial economic benefits.
D. Because of Android's enormous scale, its enormous economic value to Google,
and the
importance of quickly establishing a market presence in a dynamic
industry subject to
extensive network effects, even very small advantages have
substantial economic
consequences.
1. Google recognized the importance of accelerating the development,
distribution, acceptance, and use of Android.
- Testimony by Eric Schmidt, Larry Page, and Andy Rubin.
2. Accelerating the development, distribution, acceptance, and use of Android
increased Google's profits.
- Testimony by Eric Schmidt, Larry Page, and Andy Rubin.
- Documents including Android revenues and comparisons to revenues from
non-Android devices. (E.g., TX 1203.1 at p. 5.)
- During October 14, 2010 earnings call, Google CEO Eric Schmidt explained:
"if they are using Android systems, the revenue that we share and the
searches are shared with the operator, but not with anybody else. So, again,
it's more lucrative." (TX 951 at p. 9.)
11
3. Both the Android team and top Google executives placed a premium on Android's
performance, and such performance increased Google's revenues and profits.
- Testimony by Eric Schmidt, Larry Page, and Andy Rubin.
- Deposition testimony by Eric Schmidt that speed mattered for Android.
(Schmidt Depo. Tr. at 48:11-21.)
- July 17, 2007 Android meeting notes: "LP: Wants all screens to load in
- July 17, 2007 email from Andy Rubin regarding Android: "The feedback was
that speed matters." (TX 223 at p. 2.)
- July 17, 2007 Android meeting notes: "We should focus on speed first, then
beauty. Speed without beauty is still a win." (TX 433 at p. 2.)
- December 20, 2010 email from Dr. Schmidt: "For products--milliseconds matter
to users." (TX 426 at p. 2.)
4. Ensuring that Android got to market quickly increased Google's profits.
- Testimony by Eric Schmidt, Larry Page, and Andy Rubin.
- December 2008 Android presentation: "Why did Google invest in Android? ...
Don't get locked out!" (TX 31 at p. 12.)
- Android presentation to Google executives: "Android RPMs at $13.5, higher
than $7.8 for iPhone." (TX 1203 at p. 5.)
- October 25, 2005 Google meeting notes: "Android exists to make sure folks
can't block access to Google." (TX 195 at p. 4.)
- During an October 14, 2010 earnings call, then Google CEO Eric Schmidt
explained: "if they are using Android systems, the revenue that we share and
the searches are shared with the operator, but not with anybody else. So,
again, it's more lucrative." (TX 951 at p. 9.)
- Trial testimony by Eric Schmidt regarding Google's interest in getting
Android to market quickly. (Schmidt RT at 1458:1-8.)
12
- July 26, 2005 Android presentation identifying Google's goal with Android as
to "Disrupt the closed and proprietary nature of the two dominant industry
players: MSFT and Symbian." (TX 1 at p. 6.)
- Google documents confirm that Google was under time pressure to "[c]hallenge
Symbian and Microsoft by beating them to volume in the handset space." (TX 6
at p. 24.)
- November 6, 2006 Google presentation: "The risk to Google is that as more
manufacturers exist the software business, and more 3rd party developers
sign on to the MSFT platform because it is ubiquitous and has open APIs, we
could face a repeat of the browser wars except this time on handsets: Google
has content we'd like to deploy, but are blocked by a competitor that has
control of the platform." (TX 4003 at p. 19.)
- Andy Rubin told Larry Page in October 2005 that the alternatives to taking a
license from Sun for Java were "suboptimal." (TX 7 at p. 2.)
- Deposition testimony by Eric Schmidt indicating that Google wanted as quick
a time to market with Android as possible. (Schmidt Depo. Tr. at 49:9-12.)
- Deposition testimony by Larry Page that Google was concerned that Microsoft
could develop a closed operating system for smartphones that would allow
Microsoft to exclude Google services. (Page Depo. Tr. at 14:14-15:4; 16:10-25.)
- Deposition testimony by Andy Rubin (Rubin Ind. Depo. Tr. (7/27/2011) at
179:12180: 12):
Q. So, actually, it looks like you were thinking of trying to ship in
December of 2006; right?
A. I was under incredible schedule pressure, and as I mentioned before,
anything that we acquired or whether we partnered with Sun and acquired
their technology, it would have improved our schedule.
Q. So -- but this is talking about Skelmir now; right?
A. Yep.
Q. The deadline you were talking about, the December 2006 deadline, you
said, "I was under incredible schedule pressure."
A. Yep.
Q. What did you mean by that?
13
A. Well, look, I mean, you have a window of opportunity in smartphones.
I had competitors all over the place. When I started the company,
Microsoft was my competitor. You know, there was Symbian in there as
well, and, you know, all sorts of Linux initiatives. You have to ship as
soon as feasibly possible.
I mean, you go to extraordinary lengths to ship sooner, because it's a
very dynamic market. And it could shift directions at any time. Right.
So my job as, you know, the architect of this business concept was to
just do everything that I possibly could to get mysolution to the market
in the shortest time possible.
- Trial testimony by Dan Bornstein that he felt there was an urgency to get
Android developed and released. (Bornstein RT at 1844:15-19.)
- October 12, 2005 email from Rich Miner to Andy Rubin: "It is widely believed
that if an open platform is not introduced in the next few years then
Microsoft will own the programmable handset platform." (TX 8 at p. 2.)
- February 5, 2006 Google presentation notes, regarding proposed deal with
Sun: "Dramatically accelerates our schedule." (TX 15 at p. 7.)
- April 21, 2006 Google presentation notes, regarding proposed deal with Sun:
"Dramatically accelerates our schedule." (TX 2 at p. 5.)
- January 17, 2007 Android meeting notes: "We are a technology project, with
the goal of quick time to market using approved open source, mobile
technology. ... At CES, saw a spike of interest from companies looking to
compete with iPhone." (TX 151 at p. 2.)
- November 7, 2006 Android meeting notes: "Larry: Disappointed in Android's
timing." (TX 401 at p. 3.)
- On January 15, 2007, following the release of the iPhone, Dr. Schmidt wrote:
"I'd like to have Android GPS as soon as practicable." (TX 216 p. 1.)
- April 2010 email: "Apple is going to make sure only they have a shot at
mobile advertising. We need android to win more than ever." (TX 210 at p. 1.)
- August 2010 email: "Ultimately the OC sees this as a fight against Apple."
(TX 221 at p. 1.)
14
5. The Android team specifically brought engineers with known exposure to Sun
code onto the Android team to further its success.
- Testimony by Andy Rubin regarding Josh Bloch's work on Android, and Google's
procedures to preventing copying in connection with Android.
- Testimony by Josh Bloch from Phase 1 regarding his prior Java experience,
his Android work, and his copying.
- January 2009 email exchange between Andy Rubin and Eric Chu where, when
asked about Bloch's involvement with Android, Rubin wrote: "Seems like a
conflict." Eric Chu then wrote that Bornstein said Rubin had "already
approved Josh's current Java activities before he transferred." (TX 1060 at
p. 1.)
- Testimony by Dan Bornstein from Phase 1 that Google assigned Josh Bloch to
work on Android knowing he had prior Java knowledge. (Bornstein RT at
1860:13-1861:1.)
6. Information regarding the specific causes of Android's profitability and
success is largely or uniquely in Google's possession.
- Testimony by Larry Page, Eric Schmidt, Andy Rubin, and Aditya Agarwal.
- Financial documents produced by Google, including documents containing
Android P&Ls.
7. If Google witnesses cannot specify what portion of Android revenues is
attributable to any particular element, and cannot disentangle the different
elements of profit, then no one can.
- Testimony by Larry Page, Eric Schmidt, Andy Rubin, and Aditya Agarwal.
- Deposition testimony by Andy Rubin, Aditya Agarwal, and Google's copyright
damages expert Dr. Cox regarding the calculation of Android profits.
- Google interrogatory response: "Google states that any financial data
relating to mobile platforms from prior to January 2009 that it may have
maintained are inaccurate and unreliable."
- Financial documents produced by Google, including documents containing
Android P&Ls.
15
E. The causal nexus in this case is equal to or greater than the causal nexus
in cases in which
awards of infringer's profits have been allowed.
Oracle's proffer of causal nexus in this case is equal to or greater than cases
in which an award of infringer's profits has been allowed.
1. For instance, in the leading Ninth Circuit case on the issue, Polar Bear, the
plaintiff in Polar Bear was not required to show that the infringed kayaking
images, used as part of larger promotional efforts, had any effect on consumers
at all. Instead, the plaintiff only had to show that the entire infringing
advertisement may have been seen by the purchasers. Polar Bear Prods., Inc. v.
Timex Corp., 384 F.3d 700, 711 (9th Cir. 2004). In Polar Bear, Timex included
Polar Bear's copyrighted material in a larger promotional video shown at a trade
show and in one advertisement in a larger promotional booklet jointly prepared
with Mountain Dew. Id. at 704, 712. The promotional materials themselves
generated no revenue. The court permitted recovery of indirect profits
associated with watches purchased at trade shows where the video was played and
watches associated with a promotion including the images. The Ninth Circuit
specifically rejected the idea that it was Polar Bear's burden to show a causal
nexus between the images and the profits: "there is no requirement that Polar
Bear put Timex customers on the witness stand to testify that they purchased
watches because of Timex's use of 'PaddleQuest' images." Id. at 715 (emphasis
added). Instead, "Polar Bear satisfied its burden of establishing the
infringer's relevant gross revenue, as required by § 504(b), by presenting sales
figures from Timex's press releases stating that the Mountain Dew promotion
generated $564,000 in sales" and was "not required to separate the gross profits
resulting from the infringement from the profits resulting from other sources" —
that was Timex's burden. Id. at 712 — 13. (See also Dkt. No. 1135 at 8 — 11
(Oracle's Opposition to Google's Motion for Summary Judgment) (discussing /Polar
Bear/ at length).)
2. The plaintiff in Cream Records was not required to show that the
advertising company was paid because it used the ten infringing musical notes.
Instead, the plaintiff had to show only that the advertising company was paid
for the entire infringing ad. In Cream Records, Inc., the defendant copied
ten notes from a song, "The Theme From Shaft," and used those ten notes
without permission in a beer commercial. The plaintiff provided proof of the
total fees that the advertising company,
16
Benton & Bowles, was paid for producing the infringing commercial, and sought
those fees as an infringer's profits award. Cream Records, Inc. v. Joseph
Schlitz Brewing Co., 864 F.2d 668, 669 (9th Cir. 1989) ("Cream II"). The
Court of Appeals held it was clear error for the district court to award one
percent of the fees figure based only on its opinion that the infringement was
minimal. Id. at 669 — 70. Cream was not required to show that the reason
Benton & Bowles was paid for the advertisement was that they used the ten
infringing notes. Instead, Cream II demonstrates that the fact that those
notes were in the ad at all was sufficient to shift the burden to the defendants
to apportion down their profits. (See also Dkt. No. 1135 at 6 — 7 (Oracle's
Opposition to Google's Motion for Summary Judgment) (discussing Cream Records).)
3. The plaintiffs in Frank Music were also not required to show that excerpts
from Kismet shown as part of a review at a hotel/casino had any relationship
to the various streams of casino revenue, including gambling revenue, that the
plaintiffs sought to recover as infringer's profits. Instead, the plaintiffs
merely had to show that Kismet was shown in the casino. In Frank Music, the
plaintiffs owned the copyrights on a play called Kismet. The infringing revue,
Hallelujah Hollywood, featured ten acts of singing, dancing, and variety
performances; it featured a live tiger, jugglers, and the magicians Siegfried
and Roy. One of the ten acts included a "tribute" to Kismet with six minutes
of selected musical numbers that infringed the plaintiff's copyrights. Frank
Music Corp. v. Metro-Goldwyn-Mayer, Inc., 772 F.2d 505, 518 (9th Cir. 1985)
("Frank Music I"). Notwithstanding the fact that the infringing material was
just a few minutes of both the copyrighted play and part of a much longer revue
including numerous elements beyond the copyrighted material, the Court of
Appeals found that the plaintiffs were entitled not just to profits on ticket
sales from the infringing revue, but also to indirect profits amounting to a
percentage of "the hotel's guest accommodations, restaurants, cocktail lounges .
. . the casino itself, conventions and banquet facilities, tennis courts,
swimming pools, [and the] gym and sauna," all because /Hallelujah Hollywood/ —
the ten-act show containing six minutes of infringing content — had some
promotional value for the hotel as a whole. Frank Music Corp. v.
Metro-Goldwyn-Mayer Inc., 886 F.2d 1545, 1550 & n.4 (9th Cir. 1989) ("Frank
Music II") (1909 Act). The defendants in Frank Music admitted that the hotel
and gaming operations of the hotel were "materially enhanced by the popularity
of the hotel's entertainment[, including]
17
'Hallelujah Hollywood[.]" Frank Music I, 772 F.2d at 517. The defendant never
admitted that the selections from Kismet enhanced its revenues, only that its
entire entertainment program, including the entire revue that included
Kismet, did. Id. The Ninth Circuit also specifically rejected a
"quantitative comparison" of the number of minutes of infringing music as
compared to the entire revue. Frank Music II, 886 F.2d at 1548. It also
rejected the proposition that, simply because the infringing element could be
"omitted and the show goes on," the infringing element was unimportant in the
first instance. Frank Music I, 772 F.2d at 518. (See also Dkt. No. 1135 at 7
— 8 (Oracle's Opposition to Google's Motion for Summary Judgment) (discussing
Frank Music); Dkt. No. 1149 at 4 — 5 (Oracle's Opposition to Google's Motion in
Limine (same).)
4. The plaintiff in Andreas was not required to show that the infringing words
that appeared in a commercial generated any additional sales of Volkwagen's Audi
TT coupe. Instead, it was required to show only that the infringing
advertisement generated revenues. In Andreas, the Eighth Circuit held that a
plaintiff adequately established the causal nexus between an Volkswagen's use of
infringing material in the widely aired "Wake Up" commercial and a portion of
profits from the sale of the automobile. Andreas v. Volkswagen of Am., Inc.,
336 F.3d 789, 791 (8th Cir. 2003). The infringed text in Andreas was only
about thirty words long, and the Audi TT Coupe commercial copied only nine
words from the text. Id. The jury awarded 10% of Audi's after-tax profits on
the TT coupe sales during the time that the commercial aired as infringer's
profits. Id. at 795. After the district court found there was an insufficient
causal connection, the Eighth Circuit reversed and reinstated the jury's
verdict, concluding that "Andreas introduced more than mere speculation that the
Wake Up commercial contributed to sales of the TT coupe." Id. at 796. The
Eighth Circuit did not require a nexus between the infringing words and the
revenues; it required only a nexus between the advertisement and the revenues.
In fact, it was error for the district court to require Andreas to establish
that the infringing words drove revenues, because to do so would improperly
shift the burden of proof and "plac[e] the detriment of any speculation on
Andreas rather than Audi," id. at 797. Placing the burden on Andreas,
moreover, would contravene the general rule that "[a]ny doubt as to the
computation of costs or profits is to be resolved in favor of the plaintiff."
Id. at 795 (citing Frank Music I, 772 F.2d at 514). Andreas was required only
to introduce "more than mere
18
speculation that the Wake Up commercial" — not the words themselves —
"contributed to the sales of the TT coupe." Id. at 796 — 97. Because "the jury
had enough circumstantial evidence to find that the commercial contributed to
the profitable introduction of the TT coupe," that "shifted the burden to Audi
of showing what effect other factors had on its profits." Id. at 797. The
court made clear that the defendant's burden — not Andreas's — included
"establishing that its profit was attributable to factors other than the
infringing words: the other two commercials that did not contain the infringed
words, other parts of the Wake Up commercial, customer loyalty, brand
recognition, etc." Id. at 797. Andreas also rejected the notion that a
copyright plaintiff was required to have a customer testify that the
infringement caused its purchase decision. Id. at 797. (See also Dkt. No.
1135 at 10 — 11 (Oracle's Opposition to Google's Motion for Summary Judgment)
(discussing Andreas).)
5. The plaintiff in Davis was not required to show that the eyeglasses in the
infringing Gap ad had any effect on consumers whatsoever. Instead, the plaintiff
only had to present gross revenues from the subsidiary whose products were
advertised, rather than its revenues from its parent. In Davis, an
advertisement for clothing from The Gap included a photograph of a man wearing
an artist's copyrighted eye jewelry. Davis, 246 F.3d at 157. The copyrighted
eye jewelry was a minute portion of the advertisement, which depicted a group of
seven young people in their twenties standing in a loose V formation and
"staring at the camera with a sultry, pouty, provocative look. The group
projects the image of funky intimates of a lively after-hours rock music club.
They are dressed primarily in black, exhibiting bare arms and partly bare
chests, goatees (accompanied in one case by bleached, streaked hair),
large-brimmed, Western-style hats, and distinctive eye shades, worn either over
their eyes, on their hats, or cocked over the top of their heads." Id. at 157.
Only one of these young people was wearing the copyrighted eye jewelry. The
court held that Davis could seek infringer's profits, but could not carry his
burden by stating that The Gap's parent company earned $1.668 billion during
and shortly after the period when the infringing advertisement ran. Instead, he
was required simply to tailor the revenue he was seeking to only the particular
business unit — The Gap:
Because the ad infringed only with respect to Gap label stores and eyewear,
we agree with the district court that it was incumbent on Davis to submit
evidence at least limited to the gross revenues of the Gap label stores, and
perhaps also limited to eyewear or accessories. Had he
19
done so, the burden would then have shifted to the defendant under the terms
of § 504(b) to prove its deductible expenses and elements of profits from
those revenues attributable to factors other than the copyrighted work.
Id. at 160. There was no discussion of any requirement that Davis show that
even one article of The Gap's inventory was sold because of the use of the
copyrighted eye jewelry in the advertisement. (See also Dkt. No. 1135 at 5 — 6
(Oracle's Opposition to Google's Motion for Summary Judgment) (discussing
Davis at length).)
CONCLUSION
The exemplar evidence cited above and additional testimony and documents that
Oracle will offer at trial are sufficient to satisfy any burden it may have to
establish a "causal nexus" under 17 U.S.C. § 504(b).
Dated: May 15, 2012
BOIES, SCHILLER & FLEXNER LLP
By: /s/ Steven C. Holtzman
Steven C. Holtzman
Attorneys for Plaintiff
ORACLE AMERICA, INC.
20
|
|
Authored by: al_dunsmuir on Wednesday, May 16 2012 @ 11:26 AM EDT |
Please identify the error in the title of your post. [ Reply to This | # ]
|
|
Authored by: al_dunsmuir on Wednesday, May 16 2012 @ 11:28 AM EDT |
Please avoid staying on topic in this section. [ Reply to This | # ]
|
|
Authored by: al_dunsmuir on Wednesday, May 16 2012 @ 11:29 AM EDT |
Please mention the news story's name in the title of the top
post.[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 11:29 AM EDT |
It is quite obvious that Oracle is struggling to make a causal nexus in relation
to the rangecheck code. They keep bringing up TimSort and how it is 20x faster
and key to Android speeds.
1 - TimSort is not the infringing code, rangecheck is.
2 - Bloch testified that the 20x speedup in TimSort is not attributable to the
rangecheck code, but unrelated code in TimSort. This was never rebutted or
contested in testimony by Oracle.[ Reply to This | # ]
|
|
Authored by: al_dunsmuir on Wednesday, May 16 2012 @ 11:30 AM EDT |
Please post all transcriptions of Comes exhibits here for PJ.
Please post the HTML as plain text for easy copying.[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 11:32 AM EDT |
With many thanks to feldegast and reporters
Raw
tweets
Feldegast
tweets[ Reply to This | # ]
|
- Oracle will call Page, Rubin, Lindholm & Schmidt in any damages phase - Authored by: Anonymous on Wednesday, May 16 2012 @ 11:33 AM EDT
- Boies and Baber may be nearing agreement on damages phase - Authored by: Anonymous on Wednesday, May 16 2012 @ 11:34 AM EDT
- Judge arrives in court - Authored by: Anonymous on Wednesday, May 16 2012 @ 12:23 PM EDT
- Judge signing off on damages approach? - Authored by: Anonymous on Wednesday, May 16 2012 @ 12:28 PM EDT
- Jury will only decide patent damages - Authored by: Anonymous on Wednesday, May 16 2012 @ 12:32 PM EDT
- Stipulation says jury won't decide copyright damages - Authored by: Anonymous on Wednesday, May 16 2012 @ 12:55 PM EDT
- Statutory damages for rangeCheck etc if judge rules SSO non copyrightable - else new jury - Authored by: Anonymous on Wednesday, May 16 2012 @ 12:57 PM EDT
- Alternative Raw Feed - Authored by: Anonymous on Wednesday, May 16 2012 @ 01:00 PM EDT
- Oracle not getting a big payout anytime soon - Authored by: Anonymous on Wednesday, May 16 2012 @ 01:06 PM EDT
- Latest ZDNet article by Rachel King - including stipulation document - Authored by: Anonymous on Wednesday, May 16 2012 @ 01:43 PM EDT
- Oooh! Oooh! A jury question - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:11 PM EDT
- Oracle are there, and Baber for Google, but no other Googlers - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:12 PM EDT
- Waiting for the jury question... - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:21 PM EDT
- Judge is back in the room - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:29 PM EDT
- Jury: What does "containing" mean - symbolic reference resolution or literal contents - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:36 PM EDT
- Google: "It's literal" - Oracle: "It's not literal" - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:37 PM EDT
- Judge goes with Google's view - It's literal - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:50 PM EDT
- Jacobs tries to convince him to change his mind: No - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:51 PM EDT
- Jury laughing behind door - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:51 PM EDT
- Jury planning to leave at 1pm. Answer hasn't changed their minds - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:52 PM EDT
- Loud unexplained beeping - Authored by: Anonymous on Wednesday, May 16 2012 @ 03:54 PM EDT
- Tweets have gone quiet and we're past jury home time n/t - Authored by: Anonymous on Wednesday, May 16 2012 @ 04:15 PM EDT
|
Authored by: al_dunsmuir on Wednesday, May 16 2012 @ 11:34 AM EDT |
On twitter, Rachel King is describing "massive huddles" between the
lawyers. Judge Alsup has delayed his entry until 08:30 PDT.
Signs of desperation in the Oracle camp? Perhaps the realization that that damp
feeling is from the water lapping their ankles on the sinking case?[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 11:39 AM EDT |
It's all in 1 word:
some causal link
Now... if one
is afflicted a little bit with dislexia... one could be reading:
some casual
link
And the word "casual" certainly takes on a far more generic meaning
than "causal".
I wonder if such a tiny mis-read in Legal Terminology can
explain much of BSF's apparent behaviors.
RAS[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 11:58 AM EDT |
"that Google actually knew or should have known that its actions
constituted an unjustifiably high risk of infringement of a patent."
Nowadays, Sitting down at your keyboard, opening a file and
typing in more than 8 lines of code is an action which constitutes "an
unjustifiably high risk of infringement of a patent". [ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 12:03 PM EDT |
What about the Constitutional language, itself, "to promote the useful
arts" in this context. Details of arcane case law obscure that the patent
monopoly is granted to promote, not inhibit the useful arts. Sun developed Java,
but sat still about extending it in any real measure to mobile devices. Is the
purpose of the monopoly, the policy basis of it, to permit firms' restraining or
impeding the useful arts? The Lead, Follow, or Get out of the way saying comes
to mind. It would make good patent law - especially if the tire companies
suppress elastomer technology that would yield 300,000 mile tire life, or the
oil companies suppress extended gas mileage technology. The point is Sun
declined to want to be a player in the mobile device market, they had no
business plan to leverage Java there, but wanted to retain control over those
willing to test the market. Impeding the useful arts is NOT what the
Constitution says.[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 12:10 PM EDT |
Does anyone know more about Noser and its involvement in the eight test files? I
did a search and this is what I found:
http://www.noser.com/en/oha
If Noser was part of the copyright violation - how would this affect Google?
Wouldn't Oracle have to go after Noser?[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 12:20 PM EDT |
One thing that I wish the media would pick up on more is the reality behind
these "9 lines of code".
When you look at the infringing code as a
programmer it is even more ridiculous when you think of the
following:
- The 9 lines are really 3 if statements and a
header
- The form of the if clause is mandated by
mathematics... i.e. checking if a parameter is less than 0, etc.
- The error
classes thrown are standard Java classes for the conditions found. There is no
discretion on the part of the programmer.
- The parameters to the
out-of-bounds error class are not discretionary.
- The only discretionary
portion of the code is the parameter to the illegal argument error.
To
illustrate the simplicity of what Oracle is claiming as infringed, the following
is the pseudocode. The bold-italics parameter description is the
only discretionary part of the code.
void range_check(int
array_len, int from_index, int to_index) {
if
(from_index > to_index) throw
illegal_argument_error(description);
if
(from_index < 0) throw
out_of_bounds_error(from_index);
if (to_index >
array_len) throw out_of_bounds_error(to_index);
}
So Oracle is really claiming infringement of a single
parameter, which in the infringed code assembles an error string indicating that
the from_index is greater than the to_index.
--
nyarlathotep [ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 12:37 PM EDT |
What puzzles me, the doctrine behind recovering infringers' profits is that
competition with the copyright or patent holder causes lost profits to the IP
owner. If I own a valuable property, such as copyright to Michele Bachmann's
autobiography [this is a hypothetical] and some corner press in East St. Louis
publishes a knock-off paperback pulp version of the identical text, then every
dollar that competitor earns as a profit is money I might have earned from my
use of my IP in publishing the book based on business risk and reward balancing
in press run size, promotional spending, etc. But Sun was not using Java,
actively, at all, in the mobile device market. They were not deprived of lost
profits by an infringer. They did not have any of their own potential profits
siphoned away. They owned but did not use, so there was no impeded profit
stream. They suffered no lost profit, and should be awarded nothing unless they
pursue an equitable royalty charge theory. So, what's an equitable royalty in
this situation? It seems the infringers' profit theory arose in equity, and was
codified. Equity is for the court and the court has wide discretion in fixing a
suitable equitable remedy. But the codification step suggests it goes to the
jury. Or is the doctrine entirely a judicially fashioned remedy, not within the
federal code?
In any event, instructions and closing argument on "infringers profit"
damages theory should be a soap opera within a soap opera. Lawyers on both sides
doing a lot of hand waving while making practical and impractical suggestions.
Give the jurors popcorn and cotton candy?[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 01:41 PM EDT |
From the Verge:
Oracle and Google take
copyright damages out of the jury's hands[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 01:46 PM EDT |
Here is Rachel King's latest article about what happened in court this
morning:
http://www.zdnet.com/b
log/btl/oracle-google-hammer-out-potential-trial-roadmap/77162?utm_medium=twitte
r&utm_source=twitterfeed
She has also uploaded the stipulation
to Scribd:
http://www.scribd.com/zdnetrac
hel/d/93799869-Oracle-
v-Google-Stipulation-Regarding-Copyright-Damages
[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 02:01 PM EDT |
It is really amusing how they claim that the performance of
the rangeCheck method uber important, because it is called
2600 times...
To put this into perspective: I'd assume that on a current
Intel desktop cpu, the function body can be executed in
pretty much 2 (amortized) clock cycles, if none of the
conditions is true (this should be the case most of the
time, everything else would indicate bad programming in the
app). So the mighty 2600 calls could be executed about
500000 times per second (if inlined).
Let's assume that the java/dalvik/arm stack is 100 times
slower. It could still execute the 2600 mighty rangeChecks
during boot in half a millisecond. Hardly anything I would
notice when I go shopping for a new phone...[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, May 16 2012 @ 02:16 PM EDT |
With all this infringer's profits nonsense.
He obviously knew they were desperate, but maybe he didn't
think they were *that* desperate.[ Reply to This | # ]
|
|
Authored by: BitOBear on Wednesday, May 16 2012 @ 08:46 PM EDT |
Some (non-software) people may be wondering what rangeCheck() is for an how
significant its use actually is to a running applicaton, Android, or the phone
itself. This is a BitOBear grade answer to that question.
It isn't significant to a "finished" program of "normal
construction".
A range check on an array bounds ony "fails" (e.g. "means
something") if the program itself is caused to ask for something that it
"knows, or should have known" does not exist. The ever elusive
"properly written code" is supposed to "scrub it's input" at
run time to make sure that it never asks for this out-of-range data. Good coding
is the belt that holds up the pants of a running application. functions like
rangeCheck() are the suspenders that catch said pants when the programmer
doesn't know how to, or didn't take the time to, buckle his belt properly.
In a language like "C", the programmer is -never- given such a
function automatically by the language. Instead the programmer places a check on
the "gateway point" between what the programmer can control (e.g. his
own code) and what he cannot (e.g. what the user types, or what he might get
from some other program). If the programmer has done his job then once he knows
the input is valid, the program needs never check the input again.
Languages like Java (and effectively all interpreted languages as well) have the
check "built in" to the act of looking at some structures (such as
"arrays") and they perform the check -every- -time- something tries to
get or put something from or into an array. In short the language says "I
don't care if you want a belt or not, you are going to wear these suspenders
young man" like a very patrician guardian.
Doing this range check is not very expensive.
Doing this "inexpensive" range check -every- -time- can add up to a
huge run-time tax (computing expense) on a program.
The reason that every programmer has written rangeChec() "hundreds of
times" is that normally you -want- to put on your belt in some situations
(e.g. do a manual range check at the gateway points in your code).
Further, building wholly new code is a bit like having to "tailor and fit
your pants" in public. You want to find out if the pants fit well, but you
don't want to be walking about pants-less while you do it.
To this end, most languages have something called "conditionally compiled
code". This is code that you can include or exclude from any given
compilation run, and so any given copy of the executable by "setting a
switch" of some sort when you build the program or part thereof. In the C
language this is usually done by "defining, or not" the symbol
"DEBUG". When the symbol is defined the suspenders code is included.
This, in C++ here, looks something like:
template <class Value>
class Array {
...
Value getValueAt(int Index) {
#if defined(DEBUG)
rangeCheck(Index);
#endif
...
return ValueDiscovered;
}
...
};
The programmer does this so that during development he can pay the expense to
have his suspenders slow down everything so that he can find out if -his- code
does a bad thing internally. Once he knows his code -doesn't- do a bad thing he
can deliver it for "production release" where the DEBUG switch value
is -not- DEFINED.
In his code he might still have a range check at his gateway points that -isn't-
conditional on the DEBUG switch, if he is getting input from an untrusted
source.
-That- range check usually looks different than the rangeCheck() we are talking
about here because rather than throwing an error exception it would likely do
things like tell the user that we don't believe s/he was born in 2150 C.E. nor
1972 B.C.E. since those dates of birth are unreasonable on a drivers license
here at the DMV.
So range check "belt" code is code that is -expected- to fail for
normal (non exceptional) reasons like, well, the existence of unreasonable
users.
While rangeCheck() "suspenders" code is about unexpected and therefor
exceptional (throws exceptions typically) reasons like previously unidentified
bugs in the code (like a Y2k style error turning the birth year 1920 into 2020
on a census form after some database searched upchucked the year "20"
for a two digit year). [gateway "belt" code -should- have caught this
since a database is an "untrusted" source.]
Java is "belt and suspenders" or at least "you will wear your
suspenders young man" patrician because it was build with the web in mind,
and the web is full of unreasonable users trying to do things harm for sport.
In terms of applicability to the case at hand. Google has no reason to put
"spoliation" values in GooglePlay or the Google Ad Service. If we
presume they "belt test" their ads and application delivery code
before releasing it, we know that -by- -design- those ads avoid any condition
where the phone operates with rangeCheck() actually throwing an exception.
So we know that the execution tax of calling rangeCheck() -must- be paid because
the Java spec says it -shall- be paid, but the contribution of rangeCheck() to
the presentation of an ad or the installation of a program via GooglePlay is
-nill-.
In fact if rangeCheck() -ever- -did- step in to the process, the process would
fail. The ad would not be displayed or the application would not be bought, so
by definition if rangeCheck() -acts- -at- -all- within any Google revenue
generation attempt, Google -loses- money.
The only -nexus- that can therefore be proved, is that -every- -time-
rangeCheck() is a cost event, not a profit event, for Google. It can prevent a
sale. It can prevent an ad view. It -always- and -constantly- slows the
operation of the phone. The function rangeCheck() is pure entropy.
We do not charge the family of the accused the cost of the bullet used in their
execution here.[ Reply to This | # ]
|
|
Authored by: ais523 on Wednesday, May 16 2012 @ 09:21 PM EDT |
"5. Google would not risk its brand and reputation by engaging in
infringement unless the benefits of doing so were substantial."
Wow, this is an angle I hadn't thought of at all, and is possibly the
cornerstone of Oracle's case here. Obviously all the copying Google did was
massively important to Android, because if it wasn't, they wouldn't have taken
the risk of being caught!
I think the problem here is that that only applies if the copyright infringement
was wilful by the company (as in, a deliberate decision to steal code rather
than having a contractor cut a few corners or an employee reuse code in one
context that they'd intended for another). And Oracle don't seem to have been
trying to prove that.[ Reply to This | # ]
|
|
Authored by: bugstomper on Thursday, May 17 2012 @ 12:13 AM EDT |
In Oracle's brief they said
For example, the PolicyNodeImpl class
alone is intricate and would likely take days if not weeks to write from scratch
because it requires substantial understanding of security certificates and all
the surrounding code just to get started.
It just so happens that
PolicyNodeImpl was the only one of the eight files that I looked at in depth to
see what role the testing actually had in Android.
- PolicyNodeImpl
in the JDK is the default implementation of the interface PolicyNode. As far as
I can tell it contains the bare minimum implementation of the required methods
of the interface, to provide skeleton implementation that can be used by some
internal functions of the JDK to build default Policy trees. It isn't used even
for that in Android.
- The only use I can see for PolicyNodeImpl in
Android was as an example implementation of the PolicyNode interface used by the
PolicyNodeTest class to test that it works. I couldn't see that the test
actually tested anything other than that PolicyNodeImpl itself worked, and
PolicyNodeImpl was not used anywhere else in Android.
- Android does
contain a class that it actually uses which implements the PolicyNode interface,
PKIXPolicyNode, which comes from the FOSS security library BouncyCastle.
See
Android 0.9 beta Javadoc for PKIXPolicyNode
This did
not "take days if not weeks to write from scratch" at least it did not take
Google that long because it was already available from the BouncyCastle library
which Google had already identified to Noser in their contract as being a good
source to use for files for Android.
So much for Oracle's
argument.
[ Reply to This | # ]
|
|
|
|
|