Thuật toán 1 là chương trình Datalog cho một đơn giản điểm đến Java phân tích. Nó bắt đầu
với một tuyên bố của các lĩnh vực, kích thước của chúng, và bản đồ tùy chọn fi les chứa uốn lượn
tên ingful cho các giá trị số trong mỗi miền. V là miền của các biến địa phương
và các thông số phương pháp, phân biệt bởi tên fi er identi và phạm vi từ vựng. H là do-
chính của các đối tượng heap, được đặt tên bởi trang web phân bổ của họ. F là tên miền của ers fi identi fi lĩnh,
phân biệt bởi tên và kiểu của đối tượng, trong đó họ được chứa.
Quan hệ này được khai báo tiếp theo, cùng với tên và lĩnh vực thuộc tính của chúng.
Quan hệ vP0 là tập hợp các điểm đến ban đầu quan hệ. vP0 được khai báo là một bộ dữ liệu
(v, h), trong đó v ∈ V và h ∈ H. vP0 (v, h) là đúng khi và chỉ khi các chương trình trực tiếp đặt một ref-
erence đến đối tượng đống h trong biến v trong một hoạt động như s = new string ().
cửa hàng Quan hệ đại diện cửa hàng hoạt động như xf = y, và tải diện tương tự
sents tải hoạt động. gán (x, y) là đúng khi và chỉ khi các chương trình có chứa các phân x = y.
Giả sử rằng một đồ thị cuộc gọi chương trình có sẵn một ưu tiên, tập intraprocedural
từ các đối số phương pháp gọi đến các thông số phương pháp chính thức và bài tập từ
báo cáo return để trả về địa điểm giá trị có thể mô hình hóa như bài tập đơn giản.
Các phân tích suy luận có thể điểm đến quan hệ giữa các đối tượng heap, và có thể
quan hệ điểm đến từ các biến đối tượng heap. VP (v, h) là đúng nếu biến v có thể
trỏ đến đối tượng heap h tại bất kỳ điểm nào trong quá trình thực hiện chương trình. Tương tự như vậy, HP (h1, f, h2)
là đúng nếu đối tượng đống fi lĩnh h1.f có thể trỏ đến đối tượng heap h2.
Rule 1 kết hợp các mối quan hệ ban đầu điểm đến vào VP. Quy tắc 2 tính toán tran-
đóng nhạy hơn cạnh thu nhận. Nếu biến v2 có thể trỏ đến đối tượng h và v1 bao gồm
đang được dịch, vui lòng đợi..
