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

Gear

Groklaw Gear

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


You won't find me on Facebook


Donate

Donate Paypal


No Legal Advice

The information on Groklaw is not intended to constitute legal advice. While Mark is a lawyer and he has asked other lawyers and law students to contribute articles, all of these articles are offered to help educate, not to provide specific legal advice. They are not your lawyers.

Here's Groklaw's comments policy.


What's New

STORIES
No new stories

COMMENTS last 48 hrs
No new comments


Sponsors

Hosting:
hosted by ibiblio

On servers donated to ibiblio by AMD.

Webmaster
Nonsense word games | 439 comments | Create New Account
Comments belong to whoever posts them. Please notify us of inappropriate comments.
Nonsense word games
Authored by: Anonymous on Monday, May 14 2012 @ 08:42 PM EDT
Also look at the confusion between a program being loaded as data versus as
instructions.

[ Reply to This | Parent | # ]

He lied under oath!
Authored by: Anonymous on Monday, May 14 2012 @ 09:05 PM EDT
There's no nice way to say it. Dr. Mitchell's testimony is extremely disingenuous.

Dr. Mitchell: Yes.

Dr. Mitchell: What are they?

Dr. Mitchell: The field indexes.

Oracle: But those are numbers, does it matter?

Dr. Mitchell: Not at all, a number can be a symbolic reference.

Oracle: What about the claim construction that says a number can’t be a symbolic reference?

Dr. Mitchell: Nothing. A number is a perfectly good name. Adding the dex file to the poster. It includes the instructions, list of opcodes and operands, but not the resolve field table.

Oracle: Is the field index in a Dalvik instruction a symbolic reference?

Dr. Mitchell: It is, according to the court’s construction. It is a reference and it identifies data. It is a name (01) and that name is not a numeric memory location for the data (if it were, we wouldn’t have to resolve it) and it is resolved dynamically rather than statically.

This is completely untrue, and Dr. Mitchell must know it.


Dr. Mitchell: It obtains the data according to this numeric references. The next time this instruction is executed, the VM looks in this table and doesn’t need to do the search process again. This works for this instruction and any other one with the symbolic reference field@01.

Back to the definition of symbolic reference. Dynamic is not disputed for resolve.c. Dr. Mitchell writes the definition out even though it’s on all our screens. Shows the name is 01. Memory location is 48. 01 not equal to 48. Therefore he says it is a symbolic reference, not a numeric reference.

Yeah, and my golden retriever is really a flying pig.


Oracle: And how does this happen in dexopt?

Dr. Mitchell: Basically the same. The difference is that the I get instruction is rewritten and the symbolic name is written to a numeric reference. So iget is rewritten to igetquick and the 01 is changed to the memory location. But all the references have the same meaning whether dexopt runs or not.

Oracle: Does dexopt run dynamically?

Dr. Mitchell: Yes. It is the dynamic process of searching through these references and as a portion of the Dalvik VM. It resolves the location of classes loaded into memory at run-time. It’s all dependent on information known at runtime and not known independent of the platform of the code. I don’t have anything against Dr. August, but if I could not share his water glass, that would be good.

Ah, so it "runs dynamically", under Dr. Mitchell's definition of dynamic which is different from everyone else's. It's a "dynamic process", and because dexopt shares a bunch of code with the VM core, this process is "as a portion of the Dalvik VM".

....

I think this case has clearly demonstrated one of the real problems with the U.S. legal system today. There is essentially no penalty for lying under oath. "Dueling experts" is the norm, and when one of the experts lies through his teeth, nothing gets done about it.

[ Reply to This | Parent | # ]

Nonsense word games
Authored by: Anonymous on Monday, May 14 2012 @ 09:08 PM EDT
Also, he said that "17" is a valid symbolic reference. However, the
Java
Language Specification declares that no symbolic reference (variable/field/
class/etc name) can start with a number. As such, 17 is a very bad symbolic
reference. I realize that mathematically it doesn't matter but that the compiler

has to recognize between symbolic references and constants.

[ Reply to This | Parent | # ]

Dr. Mitchell teaches cs242 - programming languages
Authored by: Anonymous on Monday, May 14 2012 @ 09:34 PM EDT
Dr. Mitchell teaches the CS242: Programming Languages course at Stanford (or at least he did in Fall 2011).

If you scroll down to Wed, Nov 9 (2011) you see what that class was about:

Implementation structures Java virtual machine and bytecode rewriting. Modern optimizations such as polymorphic inline cache.
He re are the slides from that day (pdf).

One of the slides (slide 8, I think) is titled "JVM Linker and Verifier". It says this:

JVM Linker and Verifier

Linker
- Adds compiled class or interface to runtime system
- Creates static fields and initializes them
- Resolves names
* Checks symbolic names and replaces with direct references

Verifier
- Check bytecode of a class or interface before loaded
- Throw VerifyError exception if error occurs

(emphasis mine).

Dr. Mitchell has taught classes on how symbolic references are resolved in a Java VM, so he clearly knows this subject material.

I can't think of any charitable explanation for the testimony he gave in court today. Dr. Mitchell must know Dr. August's testimony was truthful, and his was not.

[ Reply to This | Parent | # ]

There ought to be a law
Authored by: jbb on Monday, May 14 2012 @ 09:39 PM EDT
It is amazing that people are allowed to lie on the witness stand with impunity. There should be a law to make that sort of thing illegal.

---
Our job is to remind ourselves that there are more contexts
than the one we’re in now — the one that we think is reality.
-- Alan Kay

[ Reply to This | Parent | # ]

Weasel Word Translations
Authored by: Anonymous on Monday, May 14 2012 @ 11:04 PM EDT
Oracle: Does dexopt run dynamically?

Dr. Mitchell: Yes. It is the dynamic process of searching through these references and as a portion of the Dalvik VM. It resolves the location of classes loaded into memory at run-time. It’s all dependent on information known at runtime and not known independent of the platform of the code. I don’t have anything against Dr. August, but if I could not share his water glass, that would be good…

It is the dynamic process of searching through these references...

MEANING: If it wasn't dynamic it would be halted. Different meaning of dynamic to that which would be understood by someone skilled in the art (and who wasn't being paid to understand something else).

It resolves the location of classes loaded into memory at run-time.

MEANING: It resolves the location of classes which will be loaded into memory at runtime. By my own definition of runtime - see below - dexopt does not run at the Dalvik application's runtime

[At run time, the program and the input are both available to the run time system.

"Concepts in Programming Languages" by John C. Mitchell Page 6

http://www.amazon.com/dp/0521780985 (Page 6 appears in the preview) ]

It’s all dependent on information known at runtime and not known independent of the platform of the code.

MEANING: This sounds good and the 'not known independent of' double negative will guarantee no-one can understand or contradict me

I don’t have anything against Dr. August, but if I could not share his water glass, that would be good…

MEANING: I've told so many half truths under oath that my mouth has gone dry.

[ Reply to This | Parent | # ]

Nonsense word games
Authored by: frederik on Monday, May 14 2012 @ 11:13 PM EDT
"Pattern matching" == "execution", "symbolic reference" == "indirect memory reference", "dynamic" == "static", "execution" == "emulation". The linker runs, so linking is "runtime", ...
[Blackwhite ...] "Applied to an opponent, it means the habit of impudently claiming that black is white, in contradiction of the plain facts. Applied to a Party member, it means a loyal willingness to say that black is white when Party discipline demands this. But it means also the ability to believe that black is white, and more, to know that black is white, and to forget that one has ever believed the contrary. This demands a continuous alteration of the past, made possible by the system of thought which really embraces all the rest, and which is known in Newspeak as doublethink." (Orwell, 1984).
"To tell deliberate lies while genuinely believing in them, to forget any fact that has become inconvenient, and then, when it becomes necessary again, to draw it back from oblivion for just as long as it is needed, to deny the existence of objective reality and all the while to take account of the reality which one denies – all this is indispensably necessary." (Orwell, 1984)

[ Reply to This | Parent | # ]

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 )