自然語言的二義性什么意思
自然語言的二義性什么意思面這個問題.很清楚的說明了自然語言的二義性..注(轉載)用紅墨水寫一個“藍”字,請問,這個字是紅字還是藍字?可能很少有人意識到,像紅字和藍字這樣的詞語都存在著二義性。
可能是紅色的字,也可能是“紅”這個字。在很久以前,就看到有人在研究自然語言編程,當時學計算機語言正學得頭痛,覺得這是個利國利民的大好事。
可是若干年過去了,一直沒有看到相應的成果。現在對能夠自由使用自然語言編程已經不報希望,因為就像上面說的這個是人就能懂的二義性問題,對計算機來說就是一個巨大的難題。
簡述什么是二義性文法
如果文法G中的某個句子存在不只一棵語法樹,則稱該句子是二義性的。如果文法含有二義性的句子,則稱該文法是二義性的。
二義性文法認為是一種語言語法的不完善說明,而且也應避免它。幸運的是,二義性文法在后面將介紹到的標準分析算法的測試中總是失敗的,而且也開發出了標準技術體系來解決在程序設計語言中遇到的典型二義性。
擴展資料:
有兩個解決二義性的基本方法。其一是:設置一個規則,該規則可在每個二義性情況下指出哪一個分析樹(或語法樹)是正確的。
在兩結點之間,用一條有向邊加以連接 (如○m→○n,通常我們把結點m稱為結點n的直接前驅或父結點;而將結點n稱為結點m的直接后繼或子結點),且具有如下的性質:
(1) 在這組結點中,有一個且僅有一個沒有任何前驅的結點,稱之為“根”;
(2) 除根之外,每一結點都恰好有一個直接前驅;
(3) 對于每一結點,都有一條從根到此結點的通路;
(4) 若一個結點有多個直接后繼,則按自左向右的順序進行排序。
參考資料來源:搜狗百科——二義性