Dạng phẳng trong WAM
WAM: A Tutorial Reconstruction nói rằng một truy vấn, p (Z, h (Z, W), f (W)), cần được làm phẳng bằng cách sử dụng các nguyên tắc sau:
Điều đó đang được nói, biểu mẫu phẳng truy vấn là:
X3=h(X2, X5), X4=f(X5), X1=p(X2, X3, X4);
Tôi bị lạc với định nghĩa của biến bên ngoài, hãy xem xét những điều sau:
p(Z, h(Y, a(K, C), b(W)), f(W)).
Y có phải là biến bên ngoài không? Làm thế nào nên được hình thức phẳng cho điều này? Theo hiểu biết của tôi, đây sẽ là công trình:
X1 = p(X2, X3, X4)
X2 = Z
X3 = h(X5, X6, X7)
X4 = f(X8)
X5 = Y
X6 = a(X7, X8)
X7 = K
X8 = C
X9 = b(X5)
Nhưng tôi không chắc, bắt đầu từ X4, tôi đã nhầm lẫn, tôi có nên gán các giá trị bên trong h trước không?
Trả lời
Bạn có trật tự sai lầm xung quanh: Bạn đang xây dựng các điều khoản trước khi bạn xây dựng lập luận của chúng. Văn bản nói rằng hãy xây dựng các đối số trước khi bạn xây dựng các thuật ngữ bên ngoài. Ví dụ, bạn phải xây dựng a(K, C)trước khi bạn có thể xây dựng h(..., a(K, C), ...), và bạn phải xây dựng nó trước khi bạn có thể xây dựng p(..., h(..., a(K, C), ...), ...). Đây là một lệnh hợp pháp:
X7 = K
X8 = C
X6 = a(X7, X8)
X5 = Y
X9 = b(X5)
X2 = Z
X3 = h(X5, X6, X7)
X4 = f(X8)
X1 = p(X2, X3, X4)