Để lưu bảng định tuyến, mỗi bộ xử lý P sử dụng tabP bao gồm các phần tử dạng <id,
thể nhận giá trị NIL, dis nhận giá trị thực. tabP được lưu dưới dạng một danh sách, các bộ trong tabP được sắp theo thứ tự không giảm dis.
Nhiệm vụ của giải thuật là xây dựng cho mỗi bộ xử lý P bảng định tuyến tabP sao cho:
Số phần tử trong tabP bằng số bộ xử lý trong thành phần liên thông của P, và
tabP bao hàm mọi bộ xử lý thuộc thành phần liên thông của P, mỗi phần tử t
nằm trong của tabP thỏa mãn
o t.id – Định danh của một nút trong thành phần liên thông của P, gọi là U
o t.dis – Khoảng cách ngắn nhất từ P đến U
o t.a – Nút liền kề (sau) P trên đường đi ngắn nhất từ P đến U nếu U P,
NIL nếu U = P
Đối với nhiệm vụ định tuyến, không có đòi hỏi nào trên thành phần n của các phần tử thuộc tabP. Tuy nhiên, như ta sẽ thấy sau này, khi nhiệm vụ của giải thuật được thực hiện,
t.n là định danh của nút liền kề (trước) U trên đường đi ngắn nhất từ P đến U nếu U P, là NIL nếu U = P.
Với việc lưu thông tin nút liền trước nút đích trong mỗi bộ thuộc bảng định tuyến
tabP, ta có thể biết được toàn bộ các liên kết thuộc đường đi đến mỗi nút đích. Hình dung ta có thể xếp các đường đi này để tạo thành một cây có gốc tại P, mỗi một đường đi từ gốc đến một nút trên cây chính là đường định tuyến từ P đến bộ xử lý được đại diện bởi nút đó. Ta sẽ gọi cây này là cây định tuyến nguồn P. Nhiệm vụ của giải thuật có thể xem là xây dựng cho mỗi nút P cây định tuyến nguồn P chứa tất cả các bộ xử lý thuộc thành phần liên thông của P và không chứa bất kỳ bộ xử lý nào ngoài thành phần liên thông của P.
Thực hiện hợp lệ là thực hiện mà tại mỗi cấu hình trong thực hiện, nhiệm vụ của giải thuật được thỏa mãn. Ký hiệu tập các thực hiện hợp lệ là LE.
Để lưu bảng định tuyến nhận được lần cuối cùng từ các láng giềng, P sử dụng
NeighborsP. NeighborsP bao gồm các phần tử có dạng <idQ, htabQ>, trong đó idQ nhận giá trị định danh nút, và htabQ có cấu trúc tương tự tabP. <idQ, htabQ> được lưu trong
NeighborsP thì những phần tử đã có trong NeighborsP có cùng idQ sẽ bị loại khỏi
NeighborsP trước khi phần tử mới được thêm. Ta ký hiệu ExclusiveAddP(idQ, htabQ) là thao tác thêm <idQ, htabQ> vào NeighborsP như mô tả trên.