Mặc dù bài toán lan truyền hằng có thể dễ dàng được chứng minh là không quyết định được nói chung (xem Kam và Ullman [25], chẳng hạn), có nhiều trường hợp hợp lý của bài toán này là quyết định được và có các thuật toán hiệu quả về mặt tính toán tồn tại. Chúng tôi trình bày bốn thuật toán như vậy trong bài báo này. Mỗi thuật toán được trình bày ở đây có tính bảo thủ theo nghĩa là có thể không tìm được tất cả các hằng số, nhưng mỗi hằng số được tìm thấy là hằng số trong mọi thực thi có thể có của chương trình.
Sau một số kiến thức sơ bộ, các thuật toán được trình bày trong Mục 3 theo thứ tự tăng dần về sức mạnh; mỗi thuật toán kế tiếp tìm được ít nhất các hằng số mà thuật toán trước đó tìm được. Ba thuật toán đầu tiên là các cách xây dựng lại từ công trình của những người khác; thuật toán thứ tư là mới và chứa các đặc điểm tốt nhất của mỗi thuật toán trong ba thuật toán trước. Các thuật toán này nằm trong số những thuật toán lan truyền hằng toàn cục đơn giản nhất, nhanh nhất và mạnh nhất đã biết. Trong Mục 4, thuật toán của chúng tôi được chứng minh là đúng và mạnh ít nhất bằng các thuật toán trước tốt nhất với các cận thời gian đa thức. Trong Mục 5, một số vấn đề triển khai phổ biến được thảo luận.
Trong Mục 6, một số kỹ thuật được khảo sát để thực hiện lan truyền hằng trên một vùng lớn hơn các thủ tục đơn lẻ. Trong Mục 6.2, mối quan hệ giữa lan truyền hằng và tích hợp thủ tục được thảo luận. Mục 6.3 đưa ra một thuật toán mới thực hiện một dạng phân tích luồng dữ liệu liên thủ tục trong đó thông tin bí danh được thu thập kết hợp với lan truyền hằng.
Mục 7 phác thảo một số vấn đề mở và Mục 8 kết luận bài báo.