1460717016-02f91f9c-4dcc-4c6f-a7ff-2c48beb574a2

I claim:

1. A computer-readable medium having a data structure for defining location types for representing sets of memory locations, the computer-readable medium comprising:
a first type variable, wherein the first type variable has an associated first location type, wherein the first type variable is arranged to represent a first set of memory locations, and wherein the first type variable comprises:
an equivalence class representative (ECR); and
a data constructor; wherein the data constructor comprises:
a reader component that has an associated second location type, wherein the second location type has a second type associated with a second type variable and represents a second set of memory locations; and
a writer component that has an associated third location type, wherein the third location type has a third type associated with a third type variable and represents a third set of memory locations.
2. The computer-readable medium of claim 1, wherein the first location type is arranged to represent a singleton set of abstract locations.
3. The computer-readable medium of claim 1, further comprising a fourth location type variable, wherein the fourth type variable is arranged to represent the abstract locations that are represented by the first type variable and wherein the fourth type variable is arranged to represent at least one other memory location that is not represented by the first type variable.
4. The computer-readable medium of claim 1, wherein the first location type is arranged to represent a complex set of abstract locations.
5. The computer-readable medium of claim 1, wherein the reader component is configured to represent one of an empty set, a singleton set, and a complex set of abstract locations.
6. The computer-readable medium of claim 5, wherein the writer component is configured to represent one of an empty set, a singleton set, and a complex set of abstract locations.
7. The computer-readable medium of claim 1, wherein the reader component is configured to have a location type that represents the set of memory location pointers that have the potential to be read from the memory locations represented by the first location type.
8. The computer-readable medium of claim 7, wherein the writer component is configured to have a location type that represents the set of abstract memory location pointers that have the potential to be written into the abstract memory locations represented by the first location type via a pointer value represented by the first location type.
9. The computer-readable medium of claim 4, wherein the first location type is a subtype of a fifth location type that is arranged to represent a complex set of abstract locations that includes the set of abstract locations that are represented by the first location type.
10. The computer-readable medium of claim 9, wherein the subset relationship between the sets of memory locations that are represented by the first and fifth location types are arranged to reflect a subtype relationship between program types.
11. The computer-readable medium of claim 9, wherein the subset relationship between the sets of memory locations that are represented by the first and fifth location types is arranged to reflect the program typographical appearance of the abstract locations.
12. A method for points-to analysis using at least three levels of subtyping in an optimizing compiler, comprising:
assigning a first location type to one of a variable and an expression in a computer program;
assigning a reader component to a data constructor associated with the first location type, whereby the reader component has a second location type; and
assigning a writer component to a data constructor associated with the first location type, whereby the writer component has a third location type.
13. The method of claim 12, wherein the assigning of the first location type includes assigning a first location type that represents exactly one abstract location in a computer program.
14. The method of claim 12, wherein the assigning of the first location type includes assigning a first location type that has exactly one location type supertype representing the abstract locations represented by the first location type, and wherein the location type supertype represents other memory locations that are not represented by the first location type.
15. The method of claim 14, further comprising assigning a supertype component to a data constructor associated with the first location type, wherein the supertype component has the location type representing the set of abstract location represented by the first location type, and wherein the location type supertype represents other memory location that are not represented by the first location type.
16. The method of claim 12, wherein the assigning of the first location type includes assigning a first location type that represents a complex set of abstract locations.
17. The method of claim 12, wherein the assigning of the reader component includes assigning a reader component that has a location type that represents one of an empty set, a singleton set that represents a single abstract location, and a complex set that represents multiple abstract locations.
18. The method of claim 17, wherein the assigning of the writer component includes assigning a writer component that has a location type that represents one of an empty set, a singleton set that represents a single abstract location, and a complex set that represents multiple abstract locations.
19. The method of claim 16, wherein the assigning of the first location type includes assigning a first location type that is a subtype of a second location type that is arranged to represent a complex set of abstract locations that includes the set of abstract locations that are represented by the first location type.
20. The method of claim 19, wherein the assigning of the first location type includes assigning the first location type to a first set of memory locations that has a subset relationship to a second set of memory locations having the second location type such that the subset relationship of the first and second sets reflects a subtype relationship between program types.
21. The method of claim 19, wherein the assigning of the first location type includes assigning a first location type wherein the subset relationship between the sets of memory locations that are represented by the first and second location types is arranged to reflect the program typographical appearance of the abstract locations.
22. An apparatus for performing points-to analysis, comprising:
means for assigning a first location type to one of a variable and an expression in a computer program;
means for assigning a reader component to a data constructor associated with the first location type, whereby the reader component has a second location type; and
means for assigning a writer component to the data constructor associated with the first location type, whereby the writer component has a third location type.
23. The apparatus of claim 22, wherein the first location type is arranged to represent exactly one abstract location in a computer program.
24. The apparatus of claim 22, wherein the first location type has exactly one location type supertype representing the set of abstract location represented by the first location type, and wherein the location type supertype is arranged to represent other memory locations that are not represented by the first location type.
25. The apparatus of claim 24, further comprising means for assigning a supertype component to a data constructor associated with the first location type, wherein the supertype component has the location type representing the set of abstract location represented by the first location type, and wherein the location type supertype is arranged to represent other memory locations that are not represented by the first location type.
26. The apparatus of claim 22, wherein the assigning of the first location type is arranged to represent a complex set of abstract locations.
27. The apparatus of claim 22, wherein the reader component has a location type that is arranged to represent one of an empty set, a singleton set that represents one abstract location, and a complex set that represents multiple abstract locations.
28. The apparatus of claim 27, wherein the writer component has a location type that is arranged to represent one of an empty set, a singleton set that represents one abstract location, and a complex set that represents multiple abstract locations.
29. The apparatus of claim 26, wherein the first location type is a subtype of a fourth location type that is arranged to represent a complex set of abstract locations that includes the set of abstract locations that are represented by the first location type.
30. The method of claim 29, wherein the first location type is arranged to represent a first set of memory locations that has a subset relationship to a second set of memory locations having the fourth location type such that the subset relationship of the first and fourth sets reflects a subtype relationship between program types.
31. The method of claim 29, wherein the first location type is arranged to represent a subset relationship between the sets of memory locations that are represented by the first and fourth location types such that the subset relationship reflects the program typographical appearance of the abstract locations.
32. A computer-readable medium having a data structure for defining location types for representing sets of memory locations, the computer-readable medium comprising:
a data constructor; wherein the data constructor is associated with a first location type, and wherein the data constructor comprises:
a reader component that has an associated second location type; and
a writer component that has an associated third location type.
33. The computer-readable medium of claim 32, wherein the first location type is arranged to represent a singleton set of abstract locations.
34. The computer-readable medium of claim 32, further comprising a fourth location type variable, wherein the fourth type variable is arranged to represent the abstract locations that has the first location type and wherein the fourth type variable is arranged to represent at least one other memory location that has a type that is other than the first location type.
35. The computer-readable medium of claim 32, wherein the first location type is arranged to represent a complex set of abstract locations.
36. The computer-readable medium of claim 32, wherein the reader component is configured to represent one of an empty set, a singleton set, and a complex set of abstract locations.
37. The computer-readable medium of claim 36, wherein the writer component is configured to represent one of an empty set, a singleton set, and a complex set of abstract locations.
38. The computer-readable medium of claim 32, wherein the reader component is configured to have a location type that represents the set of memory location pointers that have the potential to be read from the memory locations represented by the first location type.
39. The computer-readable medium of claim 38, wherein the writer component is configured to have a location type that represents the set of abstract memory location pointers that have the potential to be written into the abstract memory locations represented by the first location type via a pointer value represented by the first location type.
40. The computer-readable medium of claim 35, wherein the first location type is a subtype of a fifth location type that is arranged to represent a complex set of abstract locations that includes the set of abstract locations that are represented by the first location type.
41. The computer-readable medium of claim 40, wherein the subset relationship between the sets of memory locations that are represented by the first and fifth location types are arranged to reflect a subtype relationship between program types.
42. The computer-readable medium of claim 40 wherein the subset relationship between the sets of memory locations that are represented by the first and fifth location types is arranged to reflect the program typographical appearance of the abstract locations.
43. A computer system having a data structure for defining location types for representing sets of memory locations, the computer system comprising:
a data constructor; wherein the data constructor is associated with a first location type, and wherein the data constructor comprises:
a reader component that has an associated second location type; and
a writer component that has an associated third location type.
44. The computer system of claim 43, wherein the first location type is arranged to represent a singleton set of abstract locations.
45. The computer system of claim 43, further comprising a fourth location type variable, wherein the fourth type variable is arranged to represent the abstract location that has the first location type and wherein the fourth type variable is arranged to represent at least one other memory location that has a type that is other than the first location type.
46. The computer system of claim 43, wherein the first location type is arranged to represent a complex set of abstract locations.
47. The computer system of claim 43, wherein the reader component is configured to represent one of an empty set, a singleton set, and a complex set of abstract locations.
48. The computer system of claim 47, wherein the writer component is configured to represent one of an empty set, a singleton set, and a complex set of abstract locations.
49. The computer system of claim 43, wherein the reader component is configured to have a location type that represents the set of memory location pointers that have the potential to be read from the memory locations represented by the first location type.
50. The computer system of claim 49, wherein the writer component is configured to have a location type that represents the set of abstract memory location pointers that have the potential to be written into the abstract memory locations represented by the first location type via a pointer value represented by the first location type.
51. The computer system of claim 46, wherein the first location type is a subtype of a fifth location type that is arranged to represent a complex set of abstract locations that includes the set of abstract locations that are represented by the first location type.
52. The computer system of claim 51, wherein the subset relationship between the sets of memory locations that are represented by the first and fifth location types are arranged to reflect a subtype relationship between program types.
53. The computer system of claim 51 wherein the subset relationship between the sets of memory locations that are represented by the first and fifth location types is arranged to reflect the program typographical appearance of the abstract locations.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method for preventive maintenance of a magnetic resonance device with at least one coil plug-in connector detection unit, the method comprising:
detecting a number of coil connections of at least one high-frequency receive coil by the coil plug-in connector detection unit;
transmitting the number of coil connections to a central arithmetic unit of a remote service center;
totaling-up of the transmitted number of coil connections in the central arithmetic unit; and
outputting a maintenance order for maintenance of the magnetic resonance device when a sum of the number of coil connections has exceeded a predefinable threshold value,
wherein the predefinable threshold value is selected such that time for a preventive maintenance of the at least one high-frequency-receive coil remains.
2. The method as claimed in claim 1, wherein the maintenance order comprises a checking and treatment of high-frequency plug connectors of the at least one high-frequency receive coil.
3. The method as claimed in claim 1, wherein the number of coil connections and the sum of the number of coil connections are stored in a database of the central arithmetic unit.
4. The method as claimed in claim 2, wherein detecting the number of the coil connections comprises detecting the number of the coil connections by a number of connections of the high-frequency plug connectors.
5. The method as claimed in claim 2, wherein the number of coil connections and the sum of the number of coil connections are stored in a database of the central arithmetic unit.
6. A system for preventive maintenance of a magnetic resonance device, the system comprising:
a coil plug-in connector detection unit operable to detect a number of coil connections of at least one high-frequency receive coil of the magnetic resonance device;
a transmission unit operable to transmit the number of the detected coil connections to a central arithmetic unit of a remote service center, the remote service center operable to total up the transmitted number of coil connections; and
an output unit operable to output a maintenance order for the maintenance of the magnetic resonance device when a total of the number of coil connections exceeds a predefinable threshold value,
wherein the predefinable threshold value is selected such that time for preventive maintenance of the high-frequency receive coils remains.
7. The system as claimed in claim 6, further comprising a high-frequency plug connector of the at least one high-frequency receive coil,
wherein the maintenance order comprises a checking and treatment of the high-frequency-plug connector.
8. The system as claimed in claim 6, further comprising a database of the central arithmetic unit,
wherein the database is configure to store the number of coil connections and a total sum of the number of coil connections.
9. The system as claimed in claim 7, wherein the coil plug-in connector detection unit is operable to detect the number of coil connections by a number of connections of the high-frequency plug connector.
10. The system as claimed in claim 7, further comprising a database of the central arithmetic unit,
wherein the database is operable to store the number of coil connections and a total sum of the number of coil connections.