decoration decoration
Stories

GROKLAW
When you want to know more...
decoration
For layout only
Home
Archives
Site Map
Search
About Groklaw
Awards
Legal Research
Timelines
ApplevSamsung
ApplevSamsung p.2
ArchiveExplorer
Autozone
Bilski
Cases
Cast: Lawyers
Comes v. MS
Contracts/Documents
Courts
DRM
Gordon v MS
GPL
Grokdoc
HTML How To
IPI v RH
IV v. Google
Legal Docs
Lodsys
MS Litigations
MSvB&N
News Picks
Novell v. MS
Novell-MS Deal
ODF/OOXML
OOXML Appeals
OraclevGoogle
Patents
ProjectMonterey
Psystar
Quote Database
Red Hat v SCO
Salus Book
SCEA v Hotz
SCO Appeals
SCO Bankruptcy
SCO Financials
SCO Overview
SCO v IBM
SCO v Novell
SCO:Soup2Nuts
SCOsource
Sean Daly
Software Patents
Switch to Linux
Transcripts
Unix Books
Your contributions keep Groklaw going.
To donate to Groklaw 2.0:

Groklaw Gear

Click here to send an email to the editor of this weblog.


To read comments to this article, go here
Google Files Bill of Costs for Oracle to Pay - $4,030,669 - and Its Response to JMOL Motion ~pj
Friday, July 06 2012 @ 11:41 AM EDT

Google has filed its Bill of Costs [PDF] in the Oracle v. Google case -- $4,030,669 is the whopping total it would like Oracle to have to pay.

Google has also filed its response [PDF] to Oracle's motion for judgment as a matter of law. I have it as text for you. The introduction is succinct:

The Court should deny Oracle's renewed motion for judgment as a matter of law ("JMOL"), or, in the alternative, a new trial. Oracle's motion relies on conclusions from disputed evidence that are not taken in the light most favorable to the jury's verdict, ignores evidence supporting the jury's verdict, addresses legal issues that were never put to the jury in the first place, and asks the Court to rule on several issues that are now moot. It should be denied.
The motion is improper anyway, Google argues, on so many levels.

Here's one of them:

1. Oracle's motion is improper.

Oracle's motion for judgment as a matter of law on copyrightability is improper because Rule 50 does not apply to issues decided by the Court. Granite State, supra, 76 F.3d at 1030-31. The jury did not decide copyrightability, which was addressed by the Court as a matter of law.

In order to seek the relief Oracle now seeks, it would have had to file a motion for amended or additional findings under Fed. R. Civ. P. 52(b), which it did not do. Moreover, even if Oracle had filed a Rule 52(b) motion, the motion would be improper. "The purpose of post-judgment motions under Rules 52(b) and 59 is to give the district court an opportunity to correct manifest errors of law or fact at trial, allow the parties to present newly discovered evidence, take additional testimony, make additional findings, or take other action in the interests of justice." Sheldon L. Pollack Corp. v. Universal Health Servs. Inc., 1990 WL 194282 at *1 (9th Cir. Dec. 6, 1990) (unpublished); see also Rutter Group Prac. Guide Fed. Civ. Trials & Ev. Ch. 17-E at

17:152. "'This is not to say, however, that a motion to amend should be employed to introduce evidence that was available at trial but was not proffered, to relitigate old issues, to advance new theories, or to secure a rehearing on the merits.'" Pollack, 1990 WL 194282 at *1 (quoting Fontenot v. Mesa Petroleum Co., 791 F.2d 1207, 1219 (5th Cir.1986)) (emphasis added); see also ATS Prods. Inc. v. Ghiorso, No. C10-4880, 2012 WL 1067547 at *1 (N.D. Cal. Mar. 28, 2012) ("Motions under Rule 52(b) are designed to correct findings of fact which are central to the ultimate decision; the Rule is not intended to serve as a vehicle for a rehearing."). Oracle's motion under Rule 50(b) should be denied because it is procedurally improper.

Clearly Google views this Oracle motion as an attempt to try, try again with new theories and new evidence, and that's not what a motion for judgment as a matter of law is supposed to be about. Maybe if Oracle has to pay Google a $4,030,669 bill of costs it will learn a good lesson about insisting on three bites from every apple with new claims and new evidence to try to prove its claims in a court of law.

The Bill of Costs comes with a request to file two exhibits under seal, because one service provider doesn't want the names of its employees made public.

Here are the filings:

07/05/2012 - 1215 - Administrative Motion to File Under Seal re Bill of Costs filed by Google Inc.. (Attachments: # 1 Declaration of William Adams, # 2 Proposed Order)(Van Nest, Robert) (Filed on 7/5/2012) (Entered: 07/05/2012)

07/05/2012 - 1216 - BILL OF COSTS by Google Inc.. (Van Nest, Robert) (Filed on 7/5/2012) (Entered: 07/05/2012)

07/05/2012 - 1217 - RESPONSE (re 1212 MOTION for Judgment as a Matter of Law - ORACLE AMERICA, INC.'S MOTION FOR JUDGMENT AS A MATTER OF LAW UNDER RULE 50(B) OR, IN THE ALTERNATIVE, FOR A NEW TRIAL - ) (Google Inc.'s Opposition to Oracle America, Inc.'s Motion for Judgment as a Matter of Law Under Rule 50(b) or, in the Alternative, for a New Trial) filed byGoogle Inc.. (Van Nest, Robert) (Filed on 7/5/2012) (Entered: 07/05/2012)

And here's Google response to the JMOL motion, as text:

***********************

KEKER & VAN NEST LLP
ROBERT A. VAN NEST - # 84065
[email]
CHRISTA M. ANDERSON - # 184325
[email]
DANIEL PURCELL - # 191424
[email]
[address]
[phone]
[fax]

KING & SPALDING LLP
SCOTT T. WEINGAERTNER
(Pro Hac Vice)
[email]
ROBERT F. PERRY
[email]
BRUCE W. BABER (Pro Hac Vice)
[email]
[address]
[phone]
[fax]

KING & SPALDING LLP
DONALD F. ZIMMER, JR. - #112279
[email]
CHERYL A. SABNIS - #224323
[email]
[email]
[address]
[phone]
[fax]

IAN C. BALLON - #141819
[email]
HEATHER MEEKER - #172148
[email]
GREENBERG TRAURIG, LLP [email]
[address]
[phone]
[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 OPPOSITION TO
ORACLE AMERICA, INC.'S MOTION FOR
JUDGMENT AS A MATTER OF LAW
UNDER RULE 50(b) OR, IN THE
ALTERNATIVE, FOR A NEW TRIAL

Date: July 26, 2012
Time: 8:00 a.m.
Dept.: Courtroom 8, 19th Floor
Judge: Hon. William Alsup

(1)

TABLE OF CONTENTS

Page
INTRODUCTION 1
ARGUMENT 1
I. ORACLE HAS FAILED TO ESTABLISH THAT, AS A MATTER OF LAW,
GOOGLE INFRINGED ORACLE'S COPYRIGHTS.
1
A. Oracle did not prove ownership of the eleven "copied" files, which were
not registered with the Copyright Office.
1
B. The jury properly found that any copying of code comments was de
minimis
.
2
C. The jury properly found that Google did not infringe Oracle's copyrights in
the Java specifications.
3
D. A reasonable jury could find that Google made a fair use of the SSO of the 37 Java API packages. 4
1. Oracle's motion is moot. 4
2. A reasonable jury could find that the purpose and character of
Google's use of the SSO of the 37 API packages favors fair use.
5
3. A reasonable jury could find that the nature of the SSO of the 37
API packages is highly functional.
8
4. A reasonable jury could find that Google used only so much of the
J2SE API packages as is necessary for compatibility.
9
5. A reasonable jury could find that there has been no adverse impact
on the actual or potential market for Oracle's work.
10
E. Oracle is not entitled to judgment as a matter of law on copyrightability. 12
1. Oracle's motion is improper. 12
2. The Court correctly concluded that the SSO of the API packages is
not copyrightable.
13
F. Oracle is not entitled to judgment as a matter of law on derivative work. 16
II. THE JURY PROPERLY FOUND THAT GOOGLE DID NOT INFRINGE THE
ASSERTED CLAIMS OF THE 104 PATENT.
17
A. Dalvik bytecode instructions only contain indexes, which are not
"symbolic references" because they refer to numeric memory locations
17
1. Field indexes are numeric references, not symbolic references. 17
B. The Court's claim construction applies to data in the constant pool tables as
well as the actual field data in an instance object.
18
C. Indexes are not symbolic references because they are not resolved. 19
D. Dexopt does not infringe the '104 patent. 20
III. THE JURY PROPERLY FOUND THAT THE ANDROID DX TOOL DID NOT
INFRINGE THE ASSERTED CLAIMS OF THE '520 PATENT.
20
IV. ORACLE IS NOT ENTITLED TO JUDGMENT AS A MATTER OF LAW ON
GOOGLE'S EQUITABLE DEFENSES
22
A. Oracle's motion is improper. 22
B. Oracle's motion is moot. 23
C. Oracle's substantive arguments also lack merit. 23
1. There is sufficient evidence to support a finding that Oracle's claims are barred by equitable estoppel. 23
2. Oracle's claims are barred by laches. 24
V. ALTERNATIVE DEFENSES TO PATENT INFRINGEMENT 25
VI. ORACLE IS NOT ENTITLED TO A NEW TRIAL
CONCLUSION 25

(3)

TABLE OF AUTHORITIES

Page(s)
Federal Cases
Allen v. Academic Games League of Am., Inc.
89 F.3d 614 (9th Cir. 1996)
14
Apple Computer, Inc. v. Microsoft Corp.
35 F.3d 1435
3
ATS Prods. Inc. v. Ghiorso
No. C10-4880, 2012 WL 1067547 (N.D. Cal. Mar. 28, 2012)
13, 23
Baker v. Selden
101 U.S. 99 (1879)
14
Bateman v. Mnemonics, Inc.
79 F.3d 1532 (11th Cir. 1996)
8
Boisson v. Banian, Ltd.
273 F.3d 262 (2d Cir. 2001)
2
Campbell v. Acuff-Rose Music, Inc.
510 U.S. 569 (1994)
5, 7, 10
Computer Assocs. Int'l, Inc. v. Altai, Inc.
982 F.2d 693 (2d Cir. 1992)
14
Corp. of Am. v. Universal City Studios, Inc.
464 U.S. 417 (1984)
10
Eon-Net LP v. Flagstar Bancorp
653 F.3d 1314 (Fed. Cir. 2011)
22
Fisher v. Dees
794 F.2d 432 (9th Cir. 1986)
2
Gates Rubber Co. v. Bando Chem. Indus., Ltd.
9 F.3d 823 (10th Cir. 1993)
14, 15
Granite State Ins. Co. v. Smart Modular Techs., Inc.
76 F.3d 1023 (9th Cir. 1996)
2, 12, 23
Herbert Rosenthal Jewelry Corp. v. Kalpakian
446 F.2d 738 (9th Cir. 1971)
14
In re Katz Interactive Call Processing Patent Litig.
712 F. Supp. 2d 1080 (C.D. Cal. 2010)
24
Incredible Techs., Inc. v. Virtual Techs., Inc.
400 F.3d 1007 (7th Cir. 2005)
3
Kelly v. Arriba Soft Corp.
336 F.3d 811 (9th Cir. 2003)
9, 10
Lotus Dev. Corp. v. Borland Int'l, Inc.
49 F.3d 807 (1995) (Boudin, J., concurring), aff'd by an equally divided court,
516 U.S. 233 (1996)
8
Lucent Techs., Inc. v. Gateway, Inc.
580 F. Supp. 2d 1016 (S.D. Cal. 2008) aff'd in part, vacated in part on other
grounds, remanded,
580 F.3d 1301 (Fed. Cir. 2009)
24
Micro Star v. Formgen Inc.
154 F.3d 1107 (9th Cir. 1998)
17
Mirage Editions v. Albuquerque A.R.T. Co.
856 F.2d 1341 (9th Cir. 1988)
16, 17, 18, 20
Molski v. M.J. Cable, Inc.
481 F.3d 724 (9th Cir. 2007)
Newton v. Diamond
388 F.3d 1189 (9th Cir. 2004)
2
Sega Enters. Ltd. v. Accolade, Inc.
977 F.2d 1510 (9th Cir. 1992)
8, 9, 15
Sheldon L. Pollack Corp. v. Universal Health Servs. Inc.
1990 WL 194282 (9th Cir. Dec. 6, 1990)
13
Sony Computer Enter. v. Connectix Corp.
203 F.3d 596 (9th Cir. 2000)
passim
Swirsky v. Carey
376 F.3d 841 (9th Cir. 2004)
14
Federal Statutes
17 U.S.C. 102 4
17 U.S.C. 102(b) 8, 15, 16
17 U.S.C. 103(b) 2
Federal Rules
Fed. R. Civ. P. 50 2, 12, 21, 23
Fed. R. Civ. P. 50(a) 24, 25
Fed. R. Civ. P. 50(b) 3, 13, 14, 25
Fed. R. Civ. P. 52(b) 12, 13, 23
Fed. R. Civ. P. 59 13

(5)

INTRODUCTION

The Court should deny Oracle's renewed motion for judgment as a matter of law ("JMOL"), or, in the alternative, a new trial. Oracle's motion relies on conclusions from disputed evidence that are not taken in the light most favorable to the jury's verdict, ignores evidence supporting the jury's verdict, addresses legal issues that were never put to the jury in the first place, and asks the Court to rule on several issues that are now moot. It should be denied.

ARGUMENT

I. ORACLE HAS FAILED TO ESTABLISH THAT, AS A MATTER OF LAW, GOOGLE INFRINGED ORACLE'S COPYRIGHTS.

A. Oracle did not prove ownership of the eleven "copied" files, which were not
registered with the Copyright Office.

Oracle's JMOL motion as to ownership of "the asserted copyrights" is improper, without any basis, and unnecessary. In its May 16 Order denying Google's JMOL motion regarding ownership and registration (Dkt. 1165 at 2), the Court found that Google had the burden of proof on ownership of the copyrights in the works on which Oracle based its claim of infringement and that the presumption of ownership applied even as to individual portions of the copyrighted works. While Google believes the Court's ruling was incorrect, there is no need for a further order on the copyright ownership issue because the underlying liability issues have been resolved.

There is, moreover, no basis in the record for the ruling Oracle seeks. Oracle argues that it proved it is the "owner of the copyrighted works," seeks a ruling that it is the owner of "the asserted works" and cites again case law relating to the presumptions flowing from a copyright registration. Dkt. 1212 at 2-3. Yet Oracle overlooks that Google has made clear that Google does not contest Oracle's ownership of the copyrights on which Oracle sued Google, i.e., the copyrights in the Java SE 1.4 and 5.0 platforms. See Dkt. 1107 at 3. Google raised a continuing issue of ownership only because Oracle persuaded the Court (over Google's objections) that it could submit to the jury infringement "claims" based on the eleven individual files less than the entire platform works in which the copyrights were registered. The copyrights in those individual files were not separately registered with the Copyright Office, and no presumption therefore

(6)

applies to them. Oracle failed to introduce any evidence that Oracle was the author of or the owner of the copyright rights in any of those eleven individual files; there was simply no testimony from any witness on that issue and therefore no issue for the jury to decide.1 See, e.g., Boisson v. Banian, Ltd., 273 F.3d 262, 268 (2d Cir. 2001); see also 17 U.S.C. 103(b).

For these reasons and those argued by Google in its prior submissions on this issues (which Google incorporates herein by reference), Oracle is not entitled to a ruling that it proved ownership of the "asserted copyrights." See, e.g., Dkt. 1092 at 1; Dkt. 1079 at 1-2, 4, 47-49; Dkt. 1043 at 18; Dkt. 1007 at 1.

B. The jury properly found that any copying of code comments was de minimis.

"For an unauthorized use of a copyrighted work to be actionable, the use must be significant enough to constitute infringement. This means that even where the fact of copying is conceded, no legal consequences will follow from that fact unless the copying is substantial." Newton v. Diamond, 388 F.3d 1189, 1192-93 (9th Cir. 2004) (internal citations omitted). "Substantiality is measured by considering the qualitative and quantitative significance of the copied portion in relation to the plaintiff's work as a whole." Id. at 1195.

The evidence at trial showed that the comments are not compiled into object code and do not appear on phones. RT 1317:9-20, 1318:4-6 (Mitchell). Oracle's own expert conceded that the comments "don't have any impact, whatsoever, in how the program runs once it's compiled." See RT 1318:1-3 (Mitchell). Based on this testimony alone, a reasonable jury could find that the comments were qualitatively insignificant, and Oracle's motion should be denied. See Newton, 388 F.3d at 1995 (significance of copying should be "measured by considering the qualitative and quantitative significance of the copied portion.").

Oracle also failed to present evidence showing that the "average audience" would recognize the alleged copying of the source code comments. See Fisher v. Dees, 794 F.2d 432, 434 n.2 (9th Cir. 1986). Because there is no evidence that the code comments are anything other

(7)

than trivial and insignificant, the jury properly found that any copying was de minimis.

C. The jury properly found that Google did not infringe Oracle's copyrights
in the Java specifications.

Oracle argues that a reasonable jury would be compelled to find that Google infringed the SSO of its English-language documentation. Mot. at 4-5. This theory was never put to the jury, and is therefore not properly the subject of a Rule 50(b) motion. In any event, the SSO of the Java specifications is not copyrightable expression for the same reasons that the SSO of the 37 Java API packages is not copyrightable expression. See Part I.E, infra. Indeed, the English-language documentation is created automatically by a computer tool ("javadoc") from the APIs that are being documented. See RT 1168:21 - 1169:15 (Lee), RT 607:18-24, 614:1-4 (Reinhold). Because the documentation's SSO is always derived from the APIs being documented, there is no originality or creativity in the SSO of the documentation independent of the SSO of the 37 API packages. Any similarities between the Java and Android documentation are a result of both platforms using the same unprotectable names and functional organization. RT 541:21-542:10 (Screven); see also Dkt. 1202 at 40-41. Oracle therefore is not entitled to JMOL on the alleged infringement of the SSO of its Java API documentation.

Setting aside the SSO of the documentation, the jury properly found that the English-language descriptions in the Android documentation were not "virtually identical" to Oracle's Java documentation. Oracle argues that the Court should have instructed the jury to apply the "substantial similarity" test to the allegedly copied documentation. Mot. at 5. Oracle is wrong. The documentation is a factual description of underlying functionality. RT 1175:10-14 (Lee); RT 2204:1-15 (Astrachan). Protection for factual or functional works is thin. See Apple Computer, Inc. v. Microsoft Corp., 35 F.3d 1435, 1439; see also Incredible Techs., Inc. v. Virtual Techs., Inc., 400 F.3d 1007, 1013 (7th Cir. 2005) ("utilitarian explanations" of a system "are not sufficiently original or creative to merit copyright protection," or alternatively are protected "only against virtually identical copying"). The virtual identity standard is the correct one.

Even if substantial similarity were the correct standard and it is not a reasonable jury still could find that Android's documentation did not infringe Oracle's copyrights. At trial,

(8)

Oracle presented to the jury only three snippets of allegedly copied documentation. The three snippets were sufficiently different that a reasonable jury could easily find that they were not substantially similar, much less virtually identical. Compare TX 610.2 with TX 767; see also RT 1169:25-1170:19 (Lee) (comparing descriptions of the CipherInputStream class), 1171:3-1172:25 (comparing descriptions of the Cipher class), 1174:17-1175:9 (comparing descriptions of the Pipe class) Moreover, the exhibits from which those three snippets came included many other even more dissimilar samples of documentation, samples that Oracle does not address in its JMOL. Compare TX 610.2 with TX 767; RT 1326:10-1328:23 (Mitchell) (discussing "KeyPair" method). Even if those examples were substantially similar or virtually identical to each other as matter of law they are not they constituted only a handful of sentences, out of thousands of pages of documentation. RT 617-2:7 (Reinhold). Under these circumstances, a reasonable jury could find that Oracle failed to carry its burden of proving that the Android documentation, taken as a whole, infringed Oracle's Java documentation, as a whole.2

D. A reasonable jury could find that Google made a fair use of the SSO of the 37
Java API packages.

A reasonable jury could find that all four of the statutory fair use factors favor Google, or at least that three factors favor Google while other is neutral. Weighing these factors together, a reasonable jury could conclude that Google made a fair use of the SSO of the 37 API packages.

1. Oracle's motion is moot.

Oracle's motion should be denied as moot. The Court has ruled that the SSO of the 37 API packages is not copyrightable. Dkt. 1202. Google therefore was free to use the SSO of the 37 API packages, regardless of whether a reasonable jury could conclude that Google's use was also a fair use under the Copyright Act. Accordingly, Oracle's motion should be denied as moot.

(9)

2. A reasonable jury could find that the purpose and character of
Google's use of the SSO of the 37 API packages favors fair use.

As discussed below, Google's use of the SSO of the 37 API packages should not be characterized as a wholly "commercial" use. But even if it is so characterized, "the language of the statute makes clear that the commercial or nonprofit educational purpose of a work is only one element of the first factor enquiry into its purpose and character." Campbell v. Acuff-Rose Music, Inc., 510 U.S. 569, 584 (1994). "Congress resisted attempts to narrow the ambit of this traditional enquiry by adopting categories of presumptively fair use, and it urged courts to preserve the breadth of their traditionally ample view of the universe of relevant evidence." Id. (citing Harper & Row, Publishers, Inc. v. Nation Enters., 471 U.S. 539, 561 (1985)) (emphasis added). "Accordingly, the mere fact that a use is educational and not for profit does not insulate it from a finding of infringement, any more than the commercial character of a use bars a finding of fairness." Campbell, 510 U.S. at 584 (emphasis added). Indeed, most of the exemplary fair uses listed in the preamble to section 107 are "generally conducted for profit in this country." Id. (quotation marks and citation omitted). The Ninth Circuit has recognized that, after Campbell, it is improper to apply a presumption against fair use based on a defendant's commercial purpose. Sony Computer Enter. v. Connectix Corp., 203 F.3d 596, 606 (9th Cir. 2000). Instead, a commercial purpose "is only a 'separate factor that tends to weigh against a finding of fair use.'" Id. (quoting Campbell, 510 U.S. at 585).

But even a commercial use does not as a matter of law tilt the first factor against fair use. The more the purpose and character of the defendant's use is transformative, "the less will be the significance of other factors, like commercialism, that may weigh against a finding of fair use." Campbell, 510 U.S. at 579. A use is transformative where it "adds something new, with a further purpose or different character, altering the first with new expression, meaning, or message[.]" Id. (citing Pierre N. Leval, Toward a Fair Use Standard, 103 HARV. L. REV. 1105, 1111 (1990)). "[T]he goal of copyright, to promote science and the arts, is generally furthered by the creation of transformative works . . . ." Campbell, 510 U.S. at 579.

In Sony v. Connectix, the Ninth Circuit found that Connectix's Virtual Game Station

(10)

("VGS") software was a product that "creates a new platform, the personal computer, on which consumers can play games designed for the Sony PlayStation." 203 F.3d at 606. Because VGS was an "innovation" that "affords opportunities for game play in new environments," the Ninth Circuit found that VGS was "modestly transformative." Id. The court so found "notwithstanding the similarity of uses and functions between the Sony PlayStation and the Virtual Game Station" that is, notwithstanding that the very purpose of VGS was to allow users to play the same games that users play using the Sony PlayStation. The Ninth Circuit was "at a loss" to see "how Connectix's drafting of entirely new object code for its VGS program could not be transformative, despite the similarities in function and screen output." Id. at 606-07.

When Google created Android, it, too, created a new platform. Sun itself recognized that Android was innovative. See TX 435 (email from Schwartz to Schmidt stating, "Sun is ready embrace Google's innovation . . . ."); TX 2352 (blog post from Schwartz congratulating Google's "new Java/Linux phone platform, Android.") (emphasis added). In contrast to J2SE, Android provides a "full stack" solution for mobile computing. RT 1938:10-1939:12 (Rizvi). Android builds on the SSO of the 37 API packages to provide developers with access to a full application framework suitable for smartphone applications written in the Java programming language. RT 1682:23-1684:1 (Rubin). This work required approximately three years to complete. RT 1684:20-24 (Rubin). Android created opportunities to use the APIs in the 37 packages in a new environment, namely the Android smartphone platform. RT 2182:3-7 (Astrachan).

And although there are similarities between Android and the J2SE platforms in the structure, sequence and organization of the API elements in the 37 packages, the implementing code in Android and J2SE is very (and undisputedly) different. RT 2182:25-2183:1 (Astrachan); see also RT 2184:8-21, 2185:10-2186:17 (Astrachan) (implementing code "completely different"); RT 2297:7-2299:13 (Mitchell) (agreeing code is different). In fact, the nine-line rangeCheck method is the only evidence of any similarities in the implementing code itself. See RT 1309:8-1313:11 (Mitchell); RT 2182:13-2183:1 (Astrachan). Thus, notwithstanding any similarities between how the SSO of the 37 API packages are used in Android and the J2SE platforms, a reasonable jury could find that Android is transformative. See Sony v. Connectix,

(11)

203 F.3d at 606-07. Oracle's renewed motion does not address any of this evidence, based on which a reasonable jury could find that Android like VGS is sufficiently transformative to tilt the first statutory factor in favor of fair use.

Oracle argues that the defendant's work must have an entirely different purpose than the plaintiff's work in order to be transformative. Mot. at 7:9-12. This ignores the Supreme Court's definition of "transformative" in Campbell. 510 U.S. at 579 (use is transformative where it "adds something new, with a further purpose or different character, altering the first with new expression, meaning, or message"); see also Dkt. 1018 at 13. In Campbell, the transformative use was a popular song recording that parodied the plaintiff's popular song recording. While the original was a rock ballad and the other from the hip hop genre, the two works both were commercial entertainment, popular songs targeting mainstream audiences. Moreover, although the cases Oracle cites involved situations where the defendant's work had a very different purpose than the plaintiff's work, none of those cases hold that a work cannot be transformative if it has a less than entirely different purpose. Thus, none of those cases narrow Campbell nor could they, given that Campbell is a Supreme Court decision that is binding on the Ninth Circuit.

Here, Android not only provided a further purpose and different character to the SSO of the 37 API packages, allowing them to be used in a new environment and platform, but also added over one hundred new API packages that interact with and inter-depend on those 37 packages, transforming the SSO of the API packages at issue into something new. RT 1680:24-1682:5, 1682:23-1684:1 (Rubin); TX 51 (list of API packages in Android version 2.1). And the purpose of implementing the API packages was to achieve compatibility with code written to use APIs from those 37 packages. RT 1782:6-17 (Bornstein); RT 2183:6-11 (Astrachan); RT 803:9-20 (Bloch); see Dkt. 1202 at 38 ( "Google replicated what was necessary to achieve a degree of interoperability but no more, taking care, as said before, to provide its own implementations.").

To reach a final finding on the first factor, the Sony v. Connectix court weighed VGS's transformative purpose against Connectix's commercial use of Sony's copyrighted work. Connectix had reverse engineered Sony's code in order to determine its functional requirements. 203 F.3d at 601. Because the final VGS product did not incorporate Sony's copyrighted code, the

(12)

court found that Connectix's commercial use was only indirect or derivative. Id. at 607. Moreover, the use was for the purpose of achieving compatibility, a legitimate use under the first factor. Id.; see also Bateman v. Mnemonics, Inc., 79 F.3d 1532, 1547 (11th Cir. 1996) (external factors such as compatibility can negate a finding of infringement "per 17 U.S.C. 102(b)" or "a finding of fair use, copyright estoppel, or misuse"); Lotus Dev. Corp. v. Borland Int'l, Inc., 49 F.3d 807, 821 (1995) (Boudin, J., concurring) (suggesting Borland's use of Lotus's menu hierarchy, in addition to being noninfringing by virtue of 17 U.S.C. 102(b), might also be a fair use), aff'd by an equally divided court, 516 U.S. 233 (1996). Weighing these facts together, the Ninth Circuit found that the first factor favored Connectix.

Even if the SSO of the Java APIs was copyrightable which it is not a reasonable jury could find that the purpose and character of Google's use of the SSO weighed towards fair use for the same general reasons the Ninth Circuit found that the first fair use factor favored Connectix. Although the quasi-commercial aspects of Google's use would not be indirect in the same sense as in Sony v. Connectix, see 203 F.3d at 607, the commercial aspects of Google's use are nonetheless still indirect, because Google does not directly generate revenue by selling or licensing the SSO of the API packages or the API packages themselves. Instead, Google generates revenue from Android indirectly, mostly by way of revenue received on advertisements that appear on Android phones, which is the same way that Google generally generates most of its revenue from any platform, mobile or otherwise. See RT 1458:12-16 (Schmidt). And, as was the case in Sony v. Connectix, Google's use is for the purpose of achieving compatibility in this case compatibility with the APIs in the 37 packages at issue. RT 1782:6-17 (Bornstein); RT 2183:6-11 (Astrachan); RT 803:9-20 (Bloch). Weighing these facts together, a reasonable jury could find that the first statutory factor favors of finding a fair use.

3. A reasonable jury could find that the nature of the SSO of the 37 API
packages is highly functional.

The second fair use factor, the nature of the copyrighted work, "reflects the fact that not all copyrighted works are entitled to the same level of protection." Sega Enters. Ltd. v. Accolade, Inc., 977 F.2d 1510, 1524 (9th Cir. 1992). Of particular note here, the Copyright Act

(13)

does not protect "functional or factual aspects of the work." Id. (citing 17 U.S.C. 102(b)). Works having "strong functional elements" are entitled to less protection than, for example, works of fiction. Id. (citing Baker v. Selden, 101 U.S. 99, 104 (1879)).

The testimony at trial established that the SSO of the 37 API packages is functional. See, e.g., Dkt. 1047, Findings of Fact 8-9, 14-15 (citing RT 772:17-24, 773:14-16 (Bloch), RT 289:89, 290:8-12 (Ellison), RT 364:3-10 (Kurian), RT 1959:12-1960:18 (Schwartz), RT 784:9-21 (Bloch), RT 1304:5-20 (Mitchell, TX 3542, Mitchell Depo. at 120:18-24, 121:1-10), RT 746:24747: 9, 747:25-748:6 (Bloch)); see also Dkt. 1202 at 4:7-9 (finding that "[t]he overall name tree, of course has creative elements but it is also a precise command structure a utilitarian and functional set of symbols, each to carry out a pre-assigned function."). A reasonable jury would be entitled to find what this court has already found: the overall SSO of the Java API packages is "a utilitarian and functional set of symbols, each to carry out a pre-assigned function." Dkt. 1202 at 4:7-9. Therefore, a reasonable jury could conclude that this fact outweighs any creativity in the process of designing the APIs, and that this factor therefore favors a finding of fair use.

4. A reasonable jury could find that Google used only so much of the
J2SE API packages as is necessary for compatibility.

The third fair use factor considers the amount and substantiality of the portion used in relation to the work as a whole. Oracle's infringement claim is based on the use of the SSO of only 37 of the 166 API packages in J2SE. RT 597:18-19 (Reinhold) (166 API packages in J2SE 5.0); TX 1072 (37 accused API packages). Those method declarations for those packages account for just 7,000 lines of code out of the 2,800,000 in the J2SE 5.0 API. RT 2185:10-14, 2190:24-2192:7 (Astrachan). The Android implementing code for those API packages is different than the J2SE implementing code. RT 2182:25-2183:1 (Astrachan) ("The implementation code in Android is completely different than the implementation code in Java."). Based on these facts alone, a reasonable jury could find that the third factor favors Google.

Moreover, even if a jury found that the portion of the work that Google used is significant, "[i]f the secondary user only copies as much as is necessary for his or her intended use, then this factor will not weigh against him or her." Kelly v. Arriba Soft Corp., 336 F.3d 811, 820-21 (9th

(14)

Cir. 2003). Here, by using only the SSO and not the implementing code, and by limiting its use of the SSO to the API packages that developers are most likely to expect to be able to use to write programs in the Java language for a smartphone platform, Google used only so much of Oracle's work as was necessary to achieve compatibility as to basic functionalities. See RT 2196:72202: 11 (Astrachan) (all 37 API packages at issue provide basic functionalities needed to make practical use of the Java language and are expected by developers). At a minimum, then, a reasonable jury could find that the third factor weighs neither for nor against fair use. See Kelly, 336 F.3d at 821 (copying of entire copyrighted images did not weigh against fair use where "[i]t was necessary for Arriba to copy the entire image to allow users to recognize the image and decide whether to pursue more information about the image or the originating web site").

5. A reasonable jury could find that there has been no adverse impact on
the actual or potential market for Oracle's work.

"Whereas a work that merely supplants or supersedes another is likely to cause a substantially adverse impact on the potential market of the original, a transformative work is less likely to do so." Sony v. Connectix, 203 F.3d at 607 (citing Campbell, 510 U.S. at 591) (emphasis added). "No 'presumption' or inference of market harm that might find support in Sony [Corp. of Am. v. Universal City Studios, Inc., 464 U.S. 417 (1984),] is applicable to a case involving something beyond mere duplication for commercial purposes." Campbell, 510 U.S. at 591. At most, such a presumption applies to "verbatim copying of the original in its entirety for commercial purposes ...." Id. But where the defendant's "use is transformative, market substitution is at least less certain, and market harm may not be so readily inferred." Id. The Ninth Circuit's analysis in Sony v. Connectix is instructive:

The district court found that "[t]o the extent that such a substitution [of Connectix's Virtual Game Station for Sony PlayStation console] occurs, Sony will lose console sales and profits." Order at 19. We recognize that this may be so. But because the Virtual Game Station is transformative, and does not merely supplant the PlayStation console, the Virtual Game Station is a legitimate competitor in the market for platforms on which Sony and Sony-licensed games can be played. See Sega, 977 F.2d at 1522-23. For this reason, some economic loss by Sony as a result of this competition does not compel a finding of no fair use. Sony understandably seeks control over the market for devices that play games Sony produces or licenses. The copyright law, however, does not confer such a monopoly. See id. at 1523-24 ("[A]n attempt to monopolize the market by making it impossible for others to compete runs counter to the statutory purpose of promoting

(15)

creative expression and cannot constitute a strong equitable basis for resisting the invocation of the fair use doctrine."). This factor favors Connectix.

203 F.3d at 607-08 (emphases added). As discussed above, a reasonable jury could conclude that Google's use is sufficiently transformative, and that Android is a "legitimate competitor" in the market for platforms that implement the 37 API packages, not just the manufacturer of a product that supplants those API packages. The record suggests that Oracle seeks to control the market for software implementing the API packages at issue, just as Sony sought to control the market for devices that play Playstation games. See, e.g., RT 374:21-375:5 (Kurian). However, just as copyright law does not give Sony a monopoly over the market for devices that play games Sony produces or licenses, copyright law does not give Oracle a monopoly over the market for software that implements the 37 API packages. Because Google's use is transformative, the fourth factor favors Google, just as the fourth factor favored Connectix in Sony v. Connectix.

Moreover, a reasonable jury could reject Oracle's evidence of market harm based on alleged fragmentation. First, according to a report Oracle Corporation prepared and submitted to the European Community in connection with its acquisition of Sun, in 2009 vendors already had and would continue to "'fragment' Java as a programming language and environment for developers." TX 2237 at 13 ( 15); RT 572:6-20 (Screven). Indeed, Oracle maintains numerous different versions and profiles of the Java platform, with different sets of APIs for each, and code written for one version or profile will not necessarily run on a different version or profile of the Java platform. See RT 719:12-725:6 (Reinhold); see also TX 3508 at 3 ("Fragmented between Java SE and Java ME, and between Java ME mobile and TV and within mobile and TV."). Dr. Reinhold testified, however, that the different sets of APIs available on different versions of the Java platform are not a problem:

Write once, run anywhere was never a promise that if you wrote code for one Java platform that it would automatically/magically work on another.

The write once, run anywhere promise is relative to a specific one of the Java platforms. If you write an application that uses Java SE 5, then you can run it on Sun's implementation, on Oracle's implementation, on IBM's implementation, and on others.

Will that same code run on a particular configuration of Java ME? Well, it depends. It might. It might not. It depends which APIs it uses.

(16)

RT 725:10-20 (emphasis added); see also RT 563:10-564:1 (Screven) (different versions of Java are not "forks" because they are "each editions of Java specifically designed for a particular purpose"). Thus, Oracle witnesses testified that "fragmentation" is harmful only if it occurs within a platform. Indeed, Oracle's counsel specifically argued to the jury that differences between platforms are not harmful. RT 930:13-19. A reasonable jury could find that Android could not "fragment" J2SE, because it is a separate platform designed for a particular purpose distinct from that for which J2SE was designed.

Finally, the jury is entitled to rely on evidence at trial that supported a finding that Android helped Oracle's Java business rather than harming it. Oracle's Java business continues to grow at a double-digit rate. TX 573 at 5; RT 1925:23-1927:6 (Rizvi) (Java platforms business was growing 13% year over year as of 2010); TX 3532 (Rizvi Depo. at 229:13-229:21) (played at RT 1927:14-18) (Java platforms business continues to grow at a rate of approximately 10%). Jonathan Schwartz testified that Android was helping Sun's Java business. RT 1992:2-19. Had Google taken a different route and not implemented the Java language and APIs, Mr. Schwartz testified that this "would have been horrible for Sun's business." RT 1992:16-19 (Rizvi).

Thus, on the trial record, a reasonable jury could find that Android is transformative, that Oracle's alleged evidence of "fragmentation" is contradicted by the testimony of its own witnesses, and that far from harming the market for Oracle's Java platforms, Android helped that market. Thus, a reasonable jury could find, as the Ninth Circuit did in Sony v. Connectix, that the fourth factor favors fair use. Weighing all four factors statutory factors together, a reasonable jury could therefore find that Google made a fair use of the SSO of the 37 Java API packages.

E. Oracle is not entitled to judgment as a matter of law on copyrightability.

1. Oracle's motion is improper.

Oracle's motion for judgment as a matter of law on copyrightability is improper because Rule 50 does not apply to issues decided by the Court. Granite State, supra, 76 F.3d at 1030-31. The jury did not decide copyrightability, which was addressed by the Court as a matter of law.

In order to seek the relief Oracle now seeks, it would have had to file a motion for amended or additional findings under Fed. R. Civ. P. 52(b), which it did not do. Moreover, even

(17)

if Oracle had filed a Rule 52(b) motion, the motion would be improper. "The purpose of post-judgment motions under Rules 52(b) and 59 is to give the district court an opportunity to correct manifest errors of law or fact at trial, allow the parties to present newly discovered evidence, take additional testimony, make additional findings, or take other action in the interests of justice." Sheldon L. Pollack Corp. v. Universal Health Servs. Inc., 1990 WL 194282 at *1 (9th Cir. Dec. 6, 1990) (unpublished); see also Rutter Group Prac. Guide Fed. Civ. Trials & Ev. Ch. 17-E at

17:152. "'This is not to say, however, that a motion to amend should be employed to introduce evidence that was available at trial but was not proffered, to relitigate old issues, to advance new theories, or to secure a rehearing on the merits.'" Pollack, 1990 WL 194282 at *1 (quoting Fontenot v. Mesa Petroleum Co., 791 F.2d 1207, 1219 (5th Cir.1986)) (emphasis added); see also ATS Prods. Inc. v. Ghiorso, No. C10-4880, 2012 WL 1067547 at *1 (N.D. Cal. Mar. 28, 2012) ("Motions under Rule 52(b) are designed to correct findings of fact which are central to the ultimate decision; the Rule is not intended to serve as a vehicle for a rehearing."). Oracle's motion under Rule 50(b) should be denied because it is procedurally improper.

2. The Court correctly concluded that the SSO of the API packages is not
copyrightable.

Oracle's motion also fails on the merits. The parties have briefed the issue of copyrightability extensively. To the extent that the Court accepts Oracle's incorporation by reference into its motion for judgment as a matter of law of hundreds of pages of prior copyrightability filings, Google incorporates by reference its own prior copyrightability filings. See Dkts. 260, 368, 601, 778, 823, 831, 852, 860, 887, 897, 898, 955, 993, 1047, 1079, 1116, 1137, 1192 and 1198.

The Court correctly found that by including in the Android API packages the SSO of the APIs in the 37 J2SE packages at issue, "[c]ode already written in the Java language would, to this extent, run on Android and thus achieve a degree of interoperability." Order re Copyrightability [Dkt. 1202] at 6:17-18. In fact, "the rules of Java dictate the precise form of certain necessary lines of code called declarations, whose precise and necessary form explains why Android and Java must be identical when it comes to those particular lines of code." Id. at 7:16-19 (emphasis

(18)

in original); see also id. at 35:20-22. Altering the SSO of the APIs would prevent the Android versions of those APIs from being interoperable with the J2SE versions. Id. at 12:19-24. These findings were amply supported by the trial record. See, e.g., RT 2286:17-2287:8, 2292:25-2293:14 (Mitchell); RT 1787:20-1788:4 (Bornstein); RT 2168:1-2172:11, 2183:2-20 (Astrachan).

Thus, for the 37 packages, Android's method and interface headers, and field declarations, had to be exactly the same, otherwise by definition they would have implemented different methods, interfaces and fields. See Dkt. 1202 at 35:21-22. And "when there is only one way to write something, the merger doctrine bars anyone from claiming exclusive copyright ownership of that expression." Id. at 35:23-25; see also Herbert Rosenthal Jewelry Corp. v. Kalpakian, 446 F.2d 738, 742 (9th Cir. 1971); Baker v. Selden, 101 U.S. 99, 104 (1879); Allen v. Academic Games League of Am., Inc., 89 F.3d 614, 617-18 (9th Cir. 1996).

In the alternative, although the Court did not so hold, the trial record supports the conclusion that the particular SSO of the 37 API packages is unprotected under the scenes a faire doctrine, because among Java language developers they are now "commonplace expressions" that are "indispensable and naturally associated" with the functions for which they are used. Swirsky v. Carey, 376 F.3d 841, 850 (9th Cir. 2004); RT 762:13-763:13 (Bloch); RT 961:13-962:3 (Swetland); RT 1018:4-23 (Morrill); RT 1769:11-17, 1782:6-17 (Bornstein); RT 2169:25-2170:13, 2195:10-2201:17; 2202:6-11, 2203:11-15 (Astrachan); RT 364:17-21 (Kurian); RT 519:16-520:6 (Screven); RT 2289:16-2290:3 (Mitchell); see also Computer Assocs. Int'l, Inc. v. Altai, Inc., 982 F.2d 693, 707-10 (2d Cir. 1992); Gates Rubber Co. v. Bando Chem. Indus., Ltd., 9 F.3d 823, 838 (10th Cir. 1993).

Contrary to Oracle's suggestion, nothing in the Court's prior order regarding Google's motion for summary judgment precludes relief based on the merger and scenes a faire doctrines. The Court declined to grant summary judgment based on these doctrines because it concluded that Google's assertion of these doctrines was not adequately supported based on the summary judgment record. Dkt. 433 at 9:5-22. The trial record, however, went well beyond the summary judgment record. See supra. Moreover, although the Court stated that "[i]f Google believes, for example, that a particular method declaration is a scene a faire or is they only possible way to

(19)

express a given function, then Google should provide evidence and argument supporting its views as to that method declaration," the Court did not hold that Google was required to proceed by this method of proof, which the Court expressly labeled an "example." Dkt. 433 at 9:12-14. Although the Court held that based on the summary judgment record, Google was not entitled to categorical rulings with respect to these doctrines, it did not hold that Google was foreclosed from offering further proof at trial that would support categorical rulings.

Finally, the Court correctly found that "[i]n order for at least some [preexisting Java language code written by third party developers] to run on Android, Google was required to provide the same java.package.Class.method() command system using the same names with the same 'taxonomy' and with the same functional specifications." Order re Copyrightability [Dkt. 1202] at 38:9-12 (emphasis in original). As the Court further correctly found, "Google replicated what was necessary to achieve a degree of interoperability but no more, taking care, as said before, to provide its own implementations." Id. at 38:12-13.

Thus, the SSO at issue is functionally required for compatibility, and therefore not copyrightable. Sega Enters. Ltd. v. Accolade, Inc., 977 F.2d 1510, 1524 (9th Cir. 1992); 17 U.S.C. 102(b). Oracle incorrectly characterizes this statement as meaningless, arguing that all computer programs are functional. Oracle's argument misses the point; the issue at hand relates to only the SSO of the API packages, not the implementing source code that is the portion of the packages most analogous to a computer program. The source code may be copyrightable and may not be required for compatibility with the APIs in the 37 packages as is readily apparent from the fact that the Android source code implementing those APIs is completely different from the J2SE implementing source code.

Oracle's argument that Android is, in some other respects, incompatible with J2SE is beside the point. First, the Ninth Circuit has not held that a defendant's software must be compatible with the entirety of a plaintiff's platform in order for section 102(b) to apply. To the contrary, Connectix implemented only 137 of the Sony Playstation BIOS's 242 functions,3 and

(20)

the Ninth Circuit nonetheless stated that Connectix's Virtual Game Station software "itself infringe[d] no copyright." Sony Comp. Entm't, Inc. v. Connectix Corp., 203 F.3d 596, 608 n.11 (9th Cir. 2000); see also Dkt. 1202 at 39.

The merger and scenes a faire doctrines, and three formulations of section 102(b) functional requirements for compatibility, methods of operation, and systems all independently support the Court's conclusion that the SSO of the 37 API packages is not copyrightable. To the extent that the Court reaches the merits of Oracle's motion, it should be denied.

F. Oracle is not entitled to judgment as a matter of law on derivative work.

Oracle claims that the Android source code for the 37 API packages was derived from Oracle's copyrighted API specifications. Material only qualifies as an unlawful derivative work if it is derived from material that is itself copyrightable. Mirage Editions v. Albuquerque A.R.T. Co., 856 F.2d 1341, 1343 (9th Cir. 1988). Because the material from which the Android source code allegedly is derived is not copyrightable, Oracle's derivative work claim fails.

The Android source code is not even arguably "derived" from anything that is copyrightable. The literal aspects of the APIs, such as the method headers, are not copyrightable because they are functional requirements for compability. See Part I.G, supra. Oracle's only other argument is that Google's implementing source code is an unlawful derivative work of Oracle's English-language descriptions because Google's source code does the things that the English descriptions describe. See Dkt. 859 at 10 (Oracle claimed infringement based on "Google's creation of derivative works from the English-language descriptions of the elements in the API specifications"). That is nothing but an assertion that Google's expression infringes Oracle's ideas, which is a "classic case of trying to lay claim to the ownership of an idea." RT 1869:15-16 (Court); 17 U.S.C. 102(b). The specifications "explain in detail what the module is supposed to accomplish," and writing implementing code that does what the specifications explain is like "creative writing." RT 1869:18-21 (Court).4 Thus, the Android source code is not

(21)

"derived" from any Oracle material that is protected by copyright.

The cases Oracle cites are inapposite, because they assume that the accused work is derived from copyrightable expression from the original work. For example, in Micro Star v. Formgen Inc., the court concluded that the defendant's work was derived from the plaintiff's "story," and that the defendant's work was an unauthorized "sequel." 154 F.3d 1107, 1112 (9th Cir. 1998). Here, the Court found that the literal elements of the APIs are not copyrighted, and that the English-language descriptions explain an uncopyrightable idea. Because none of the material from which the Android source code allegedly is derived is copyrightable, the Android source code is not an unlawful derivative work. Mirage Editions, 856 F.2d at 1343.

II. THE JURY PROPERLY FOUND THAT GOOGLE DID NOT INFRINGE THE ASSERTED CLAIMS OF THE 104 PATENT.

Under the Court's claim construction, no reasonable jury could find that Android infringes Claims 11, 27, 29, 39, 40, or 41 of U.S. Patent No. RE38,104 (the '104 patent).

A. Dalvik bytecode instructions only contain indexes, which are not "symbolic references" because they refer to numeric memory locations.

Oracle now retreats from the argument that references can be both symbolic and numeric. Instead, Oracle focuses on a related argument that the "data" being referenced is "the value of the data from the instance of an object." Mot. at 18. This theory suffers the same flaws.

1. Field indexes are numeric references, not symbolic references.

Dalvik bytecode instructions consist of an opcode and an operand or "argument." TX 737; RT 3221:8-10, 3234:4-7 (McFadden); RT 3590:23-3591:25 (Bornstein); RT 3844:14-3855:12, 3925:4-18 (August). The accused operands, moreover, are indexes that take the form "field@CCCC" and provide references to locations in tables. See Mot. at 17, 18; TX 46.106; TX 735; TX 737; RT 3732:15-19, 3736:16-23, 3755:8-9, 3765:9-12 (McFadden); 3858:5-12, 3858:21-359:11, 3918:13-23, 3923:20-24, 3925:19-3926-9 (August). Oracle's own expert, Dr. Mitchell, agrees. RT 3488:6-8, 3488:19-23, 3489:10-12 (Dr. Mitchell); RT 3496:12-3497:6. These indexes refer to locations in the constant pool tables, which are data in the .dex file; for example, "field@0001" refers to the entry 1 in the Field IDs table. See Mot. at 17.

As in its original JMOL motion, Oracle focuses on the IGET instruction in Dalvik

(22)

bytecode. See id. Mot. at 18. It argues that the IGET instruction corresponds to the "LOAD 'y'" instruction in Figure 1B of the '104 patent. Id. But that is the wrong example. As Oracle notes, "[t]he IGET instruction contains three operands vA, vB, and field@CCCC where the third operand field@CCCC is the field index." Id. at 3 (citing TX 735 at 6; RT 3221:8-10 (McFadden)). That "field index in the IGET instruction identifies the field from which the data is to be obtained by IGET." [Id.] The IGET instruction therefore actually corresponds to the "LOAD 2" instruction depicted in Figure 1A of the '104 patent. That instruction directs the computer to go to Slot 2 in the table, much like the IGET instruction 52 01 instructs the computer to go to entry 01 in the Field ID table. Oracle concedes this is how the IGET instruction works. Id. at 18. In short, the operands for IGET instructions in Dalvik bytecode the indexes therefore qualify as numeric references rather than symbolic references. Those indexes refer to data by a numeric memory location entry 01 in the Field IDs table. They therefore are numeric references that do not meet the Court's construction of "symbolic references."

B. The Court's claim construction applies to data in the constant pool tables as
well as the actual field data in an instance object.

Oracle admits that indexes in the instruction stream indicate the location of information in the constant pool tables. Oracle nonetheless contends that the indexes in Dalvik bytecode instructions do not qualify as "numeric" references because they do not identify "the value of the data from the instance of an object." Mot. at 18-19. Put another way, according to Oracle, an index "identifies data by a name other than the numeric memory location of the data," and therefore cannot meet the Court's construction of a "symbolic reference." Mot. at 17. There is no basis for Oracle's narrow interpretation of the term "data."

The Court's claim construction distinguishes between using names to represent data (i.e., symbolic references) and using numeric memory locations. Dkt. No. 137 at 22. Dr. Mitchell agrees. RT 3480:12-15. There is no limitation regarding the type of data being referenced. Yet Oracle argues "[t]hat data from an instance object is the 'data' that the claimed symbolic reference refers to, and not some other data, ...." Mot. at 19. The jury could reasonably reject such a narrow reading of the term "data," particularly when Dr. August testified that information

(23)

in the constant pool tables is identified by location using an index value in the Dalvik bytecode instructions; there is no search performed to determine the location of the data. RT 3865:11-20.

As Dr. August further explained, the information in the constant pool is data. RT 3955:22-24. And the Court's claim construction simply distinguishes between a reference to data any data by a name rather than location. See Claim Construction Order (Dkt. 137) at 20-22; RT 3480:12-15 (Mitchell). The construction included no limitations or requirements regarding the type of data being referenced. In any event, the theory Oracle posits that "data" must refer to some ultimate value in an instance object is disproved by testimony that such "data" may itself be a reference (an index) to yet other data. RT 4002:14-16; 4003:11-17.

By claiming that only the value of the actual field data in an instance object qualifies as "data" under the Court's construction (whereas the data in constant pool tables does not), Oracle inherently claims that references can be both symbolic and numeric. That is, depending on which "data" one uses as the relative end point, upstream references would all be deemed "symbolic", regardless of whether they were simple indexes to the location of other data. The Court has already correctly rejected this argument in light of the compelling evidence to the contrary in the patent specification. See, e.g., TX 4015 ('104 Patent) at col. 2, ll 41-55.

C. Indexes are not symbolic references because they are not resolved.

Oracle contends that field indices are "resolved" into pointers, making them "symbolic references," and points to Mr. McFadden's testimony for support. Mot. at 19-20. But Mr. McFadden testified that it does not make sense to "resolve" field indices, which tell the computer where to go in memory; rather, resolution is done when the computer doesn't know where to go. RT 3650:18-3651:1. The document Oracle cites does not suggest otherwise. To the contrary, it explains the existence of a chain of indexes, which indexes lead to strings, which strings are used by the resolver determine the instance object. TX 46.12 at 1. It is these strings and not the indexes that are "resolved" for program to determine where to go in memory.

In fact, indexes in Dalvik bytecode instructions always point to a numeric memory location of data, both before and after resolution of the symbolic references in the .dex file string data. In Resolve.c, the instruction stream does not change; the index field@CCCC is used both

(24)

before and after resolution to look at entries in the Resolved Fields Table and the Field ID table. RT 3636:13-3637:20 (McFadden). In dexopt, the bytecode instruction operand is simply changed from one numeric reference to another numeric reference. RT 3746:22-3747:14 (McFadden); 3933:5-3934:19 (August). Specifically, the index value "field@CCCC" is replaced with another numeric memory location the offset "fieldoff@CCCC." RT 3746:22-3747:14 (McFadden); 3933:5-3934:19 (August); TX 737 at 3; TX 46.106; see also TX 737 at 1; TX 739.

D. Dexopt does not infringe the '104 patent.

Oracle's request for judgment as a matter of law on infringement of claims 27 and 29 should also be denied. Oracle's claim that the Android dexopt tool resolves symbolic references dynamically rather than statically rests on Dr. Mitchell's erroneous opinion that an optimization (e.g., resolution) based on information about a runtime environment is "dynamic." But there is a wealth of documentary evidence and fact and expert testimony that proves dexopt is a static optimization. RT 3730:16-22 (McFadden); RT 3940:17-20 (August); RT 3595:21-24 (Bornstein); TX 32 at 35, TX 816 at 24:05; TX 735 (defining opcodes that "are reasonable candidates for static linking"); TX 737 (defining "statically linked" instruction formats); TX 739 (dexopt performs optimizations that "can be inferred statically"). Oracle's reliance on TX 1094 remains specious. As is clear, it was an incomplete cut-and-paste job from TX 739 (also TX 105). And the copied reference to runtime information, as explained by Andy McFadden, does not refer to optimizations performed by dexopt. See RT 3734:20-3735:7. Accordingly, no reasonable jury could conclude that dexopt infringes claims 27 and 29 of the '104 patent.

In any event, the jury found that the other asserted claims were not infringed. At the least, there was insufficient proof that Dalvik bytecode instructions contain symbolic references. As such, there is an independent basis for affirming the verdict on Claims 27 and 29.

III. THE JURY PROPERLY FOUND THAT THE ANDROID DX TOOL DID NOT INFRINGE THE ASSERTED CLAIMS OF THE '520 PATENT.

Oracle argues yet again that the "ordinary meaning" of "simulating execution" compels a finding of infringement of the '520 patent. Oracle might believe that the third time will be the charm; however, its argument, already rejected both by the jury and by the Court, fares no better

(25)

this time around. The root of Oracle's argument is that simulating execution of bytecode requires no more than that "bytecode instructions are examined without being executed." Mot. at 21:26. Yet, as the Court correctly observed in its Order denying Oracle's first Rule 50 motion, Oracle never sought to construe the term "simulating execution." Dkt. 1201 at 10:10-12. Instead, Oracle took the position that the term should be understood in accordance with its plain meaning. Professor Parr's testimony, which the jury was entitled to credit, was that the sort of pattern matching performed by the Android dx tool does not fall within the plain meaning that one skilled in the art would give "simulating execution." Dr. Mitchell apparently disagreed, but the jury was not required to accept his opinion. Dkt. 1201 at 11:13-17. Although Oracle plainly does not agree with the jury's decision to credit Professor Parr's opinion, it cannot now insist on a different construction of the term as matter of law after taking the position throughout this litigation that there was no need to construe the term in the first place.

Leaving aside the untimeliness of Oracle's request for its desired construction of the term "simulating execution," the arguments Oracle presents for why the dx tool allegedly infringes are flawed. In its two-page discussion of the issue, Oracle references not once, but twice, the source code comments saying that the simulator.java class knows how to simulate the effects of executing bytecode. Mot. at 21:16-18, 21:21-23. Yet those comments are consistent with the manner in which Google's witnesses testified that the dx tool works when they explained why it did not infringe: The testimony at trial by both Mr. Bornstein and Professor Parr is that the simulator.java class does simulate execution of bytecode but that it does so only for purposes other than identifying the static initialization of an array. RT 3589:3-3590:6 (Bornstein); RT 3798:3-16 (Parr)]. Moreover, both parties' experts agreed that the code that identifies the static initialization of arrays is not found in the simulator.java class; instead, it is found in the separate BytecodeArray class. RT 3799:14-3800:7 (Parr); 3519:19-3520:3 (Mitchell); 4061:9-4062:3 (Mitchell). That separate class identifies static initialization of arrays through pattern matching rather than through simulating execution. RT 3799:14-3801:18 (Parr). Indeed, Oracle concedes that the dx tool does perform pattern matching, Mot. at 22:17-19, while arguing that the claims do not exclude pattern matching from their ambit. But it was Oracle's burden to prove infringement

(26)

of the claims as properly construed, not Google's task to prove that the dx tool does not infringe.5

In sum, Oracle's assertions that the Court limited the claims of the '520 patent to a disclosed embodiment, Mot. at 22:22-23, or that Google has read additional limitations into the claims, Mot. at 22:6-7, are incorrect. The '520 patent expressly says that methods "consistent with the present invention" yield "an improved system for initializing static arrays in the JavaTM programming environment." TX 4011 at col. 3, 43-45. Even Dr. Mitchell admitted that "in a Java bytecode system, instructions operate by pushing and popping and replacing values from the top of an operand stack." RT 4058:3-6 (Mitchell). Accordingly, the Court's understanding, consistent with Professor Parr's testimony, that "simulating execution" within the context of the '520 patent means "the simulation of actual Java virtual machine operations," (Dkt. 1201 at 10:17-18), is a reflection of the plain meaning of the claim language, not a limitation of the claims to a particular embodiment. Oracle's argument that the claims cover more than what one skilled in the art would understand simulating execution by this sort of virtual machine to mean is odd, for Oracle itself has throughout this litigation insisted that its patents are "Java-related" patents. E.g., Oracle's Trial Brief (Dkt. No. 538) at 1.

IV. ORACLE IS NOT ENTITLED TO JUDGMENT AS A MATTER OF LAW ON GOOGLE'S EQUITABLE DEFENSES

A. Oracle's motion is improper.

The Court addressed Google's equitable defenses in its Findings of Fact and Conclusions

(27)

of Law. Dkt. 1203 at 3. Oracle's motion for judgment as a matter of law on Google's equitable defenses of equitable estoppel and laches is improper because, as discussed above in Sections I.A. and I.E.1, Rule 50 does not apply to issues decided by the Court. Granite State, 76 F.3d at 1030-31 (9th Cir. 1996). If Oracle wishes to challenge the Court's ruling on those defenses, Oracle must file a motion for amended or additional findings under Fed. R. Civ. P. 52(b).

B. Oracle's motion is moot.

Even if Oracle's motion was proper, Oracle would not be entitled to the relief it seeks. Oracle asks the Court to grant judgment in its favor on two defenses equitable estoppel and laches that had no effect on the final outcome of this case. The Court has held that these defenses "can be revived" by Google if the case is remanded. [Dkt. 1203]. Re-litigating these issues now serves no purpose. ATS Prods. Inc., 2012 WL 1067547 at *1 (N.D. Cal. March 28, 2012) ("Motions under Rule 52(b) are designed to correct findings of fact which are central to the ultimate decision; the Rule is not intended to serve as a vehicle for a rehearing. Accordingly, Oracle's motion should be denied as moot. Id. ("[A] motion to amend a court's factual and legal findings is properly denied where the proposed additional facts would not affect the outcome of the case or are immaterial to the court's conclusions.").

C. Oracle's substantive arguments also lack merit.

There are no grounds for amending the Court's equitable estoppel or laches findings. All of the arguments and specific evidence in Oracle's renewed motion appeared either in Oracle's proposed findings of fact and conclusions of law (Dkt. 1049) or in its earlier JMOL motions (Dkts. 1045 and 1168), and Google therefore incorporates by reference the evidence and argument in its responses to those filings. Dkts. 1047, 1079, 1092 and 1169. Oracle previously failed to persuade the Court that a preemptive finding in Oracle's favor is warranted on these issues. Dkt. 1203 at 3:14-20. There is no reason that it should prevail now.

1. There is sufficient evidence to support a finding that Oracle's claims
are barred by equitable estoppel.

Even if the Court were to address Google's estoppel defense on the merits, there would be sufficient evidence to support a finding in Google's favor, as detailed in Google's Proposed

(28)

Findings of Fact and Conclusions of Law, Dkt. 1047 at 32-33, Google's Responses to Oracle's Proposed Findings of Fact and Conclusions of Law, Dkt. 1079 at 59-62, and Google's Opposition to Oracle's Rule 50(a) Motion, Dkt. 1169 at 14-18, all of which Google incorporates herein by reference. Sun knew about and approved unlicensed, open source implementations of the Java API packages as long as the implementation did not use the Java brand. See Dkt. 1047, Findings of Fact 37-52. As early as 2005, Sun knew Google intended to implement Java API packages in Android, and Sun never told Google it needed a license to do so. See id., Findings of Fact 53-61. After Google publicly announced Android, Sun congratulated Google and welcomed Google to the Java community. See id., Findings of Fact 62-72. After Google's announcement of Android and release of the Android SDK, Sun continued to talk with Google and publicly support Android. See id., Findings of Fact 73-81. Google was aware of and relied on Sun's public statements of approval and acts of support for the Android platform. See id., Findings of Fact 82-87. Oracle initially encouraged Android and tried to partner with Google. See id., Findings of Fact 88-92. Accordingly, there is sufficient evidence to support a finding for Google on estoppel.

2. Oracle's claims are barred by laches.

The facts that support Google's equitable estoppel defense also support its laches defense. Dkt. 1047 at 31-32; 1079 at 64-66; 1169 at 16-17. That Sun occasionally tried to convince Google to take a license (in addition to entering into a partnership) for Android but did not identify or even allude to the copyrights-in-suit or patents-in-suit does not excuse Oracle's delay in filing suit. Each of the cases Oracle cites for the proposition that negotiations are an excuse for unreasonable delay involve negotiations focused on the specific intellectual property at issue. See Lucent Techs., Inc. v. Gateway, Inc., 580 F. Supp. 2d 1016, 1053 (S.D. Cal. 2008) aff'd in part, vacated in part on other grounds, remanded, 580 F.3d 1301 (Fed. Cir. 2009) ("The evidence showed that for several years leading up to the start of the litigation underlying this case, beginning around 1998 through 2002 and 2003, Lucent engaged in efforts to sell a license for the '226 to computer manufacturers Gateway and Dell."); see also In re Katz Interactive Call Processing Patent Litig., 712 F. Supp. 2d 1080, 1110 (C.D. Cal. 2010). Sun and Google never negotiated over the copyrights-in-suit or patents-in-suit, or any specific copyrights or patents for

(29)

that matter. RT 3190:25-3192:2, 3181:25-3182:10 (Rubin). Accordingly, those "negotiations" do not excuse Oracle's delay in filing suit.

V. ALTERNATIVE DEFENSES TO PATENT INFRINGEMENT

Oracle moves for judgment as a matter of law as to Google's Sixth (patent misuse), Eighth (use by the U.S.) and Nineteenth (unclean hands) defenses, as well as Google's defense of express license. Though Google believes these defenses have merit, Google chose not to present them at trial and therefore did not oppose Oracle's Rule 50(a) motion on the defenses. Dkt. 1169 at 18-19. Similarly, Google does not oppose Oracle's Rule 50(b) motion on those defenses.

VI. ORACLE IS NOT ENTITLED TO A NEW TRIAL

Oracle has failed to show that either the jury's verdict or the Court's own rulings are erroneous in any way, let alone that they are "against the weight of the evidence." Dkt. 1212 at 24. Accordingly, Oracle's alternative request for a new trial should be denied.

A new trial may be warranted where "the verdict is against the weight of the evidence, [] the damages are excessive, or [] for other reasons, the trial was not fair to the party moving." Molski v. M.J. Cable, Inc., 481 F.3d 724, 729 (9th Cir. 2007) (quoting Montgomery Ward & Co. v. Duncan, 311 U.S. 243, 251 (1940))." Oracle simply contends that it "is entitled to a new trial for all the same reasons it is entitled to JMOL." Dkt. 1212 at 25. For all the reasons explained above, Oracle is not entitled to JMOL, and therefore is not entitled to a new trial on any issue.

CONCLUSION

For the all of these reasons, Oracle's motion should be denied.

Dated: July 5, 2012 KEKER & VAN NEST LLP

/s/ Robert A. Van Nest
By: ROBERT A. VAN NEST

Attorneys for Defendant
GOOGLE INC.

(30)

1 This issue was decided by the Court as a matter of law, and Rule 50 does not apply to issues decided by the Court. Granite State Ins. Co. v. Smart Modular Techs., Inc., 76 F.3d 1023, 103031 (9th Cir. 1996).
2 Additionally, a reasonable jury could find that any similarities between the Android and Java documentation is a result of the fact that two sets of documentation describe the same ideas and functionality. As Mr. Lee noted when asked about documentation of the Pipe class in the java.nio.channels package, "they contain the same words, certainly, but that's to be expected when you're trying to you're describing various specific concepts in as few words as possible." RT 1175:10-24 (Lee). When asked about similarity, Prof. Mitchell also stated that the examples "tell you the same information" and "mean the same thing." RT 1328:2-4, 9-10 (Mitchell). A reasonable jury could therefore conclude that any similarities in the documentation are similar ideas, not similar expressions. That is not copyright infringement. 17 U.S.C. 102.
3 See Connectix's Opening Appellate Br. at 18, available at 1999 WL 33623860 (9th Cir. May 27, 1999).
4 See also RT 1368:25-1369:1 (Court) (Oracle's derivative work argument "just seems to me to be invalid under the basic tenets of copyright law"); RT 1375:22-24 (Court) (Oracle's derivative work claim doesn't "add[] anything, except violating the principle of you can't get a monopoly and ownership over an idea"); RT 2434:13-2435:16 (Court) (rejecting derivative work theory).
5 Oracle also presses a claim differentiation argument that was neither found in Dr. Mitchell's expert report nor testified to by any witness at trial. Mot. at 22:12-13. The time to make such an argument, if at all, would have been during the Markman process, or at the latest as part of the jury charge conference. It is far too late to raise it now. However, had Oracle attempted to make the argument in a timely fashion, Google would have shown why it has no merit. Unasserted claim 3 of the '520 patent, upon which Oracle seeks to rely for a claim differentiation argument, requires that the "play executing step" of claim 1 include within it three additional steps: the steps of allocating a stack, reading a bytecode that manipulates the stack, and performing stack manipulation on the stack. Because the dependent claim requires that all three steps be part of the play executing step, a method that allocated a stack as part of the second step of claim 1 ("receiving the class into a preloader") but performed the other two steps (reading a bytecode and manipulating the stack) as part of the third ("play executing") step of claim 1 would not infringe claim 3, and would still infringe claim 1. The point of difference between the claims is thus not merely manipulation of a stack. Thus, even if claim differentiation were an iron-clad rule and it is not, see Eon-Net LP v. Flagstar Bancorp, 653 F.3d 1314, 1323 (Fed. Cir. 2011) claim differentiation does not prevent claim 1 from covering stack manipulation.

  View Printable Version


Groklaw © Copyright 2003-2013 Pamela Jones.
All trademarks and copyrights on this page are owned by their respective owners.
Comments are owned by the individual posters.

PJ's articles are licensed under a Creative Commons License. ( Details )