संपादित करें: यह अब SymPy में है
$ isympy
In [1]: A = MatrixSymbol('A', n, n)
In [2]: B = MatrixSymbol('B', n, n)
In [3]: context = Q.symmetric(A) & Q.positive_definite(A) & Q.orthogonal(B)
In [4]: ask(Q.symmetric(B*A*B.T) & Q.positive_definite(B*A*B.T), context)
Out[4]: True
पुराना उत्तर जो अन्य काम दिखाता है
इसलिए थोड़ी देर तक इस पर गौर करने के बाद मैंने यही पाया।
मेरे विशिष्ट प्रश्न का वर्तमान उत्तर "नहीं, कोई वर्तमान प्रणाली नहीं है जो इस प्रश्न का उत्तर दे सके।" हालांकि कुछ चीजें हैं जो करीब आती दिख रही हैं।
सबसे पहले, मैट नेप्ले और लेगरबेर दोनों ने डिएगो फैब्रगैट और पाओलो बिआंटिनेसि द्वारा काम करने के लिए इशारा किया । यह काम संभावित महत्व और इस समस्या की व्यवहार्यता दोनों को दर्शाता है। अच्छा पढ़ा है। दुर्भाग्य से मैं निश्चित नहीं हूं कि उसकी प्रणाली कैसे काम करती है या वह क्या करने में सक्षम है (यदि किसी को इस विषय पर अन्य सार्वजनिक सामग्री का पता है तो मुझे बताएं)।
दूसरा, एक दसवीं बीजगणित पुस्तकालय है जिसे गणित के लिए लिखा गया है जिसे एक्सएक्ट कहा जाता है जो समरूपता और ऐसे प्रतीकात्मक रूप से संभालता है। यह कुछ चीजों को बहुत अच्छी तरह से करता है लेकिन रैखिक बीजगणित के विशेष मामले के अनुरूप नहीं है।
तीसरा, इन नियमों को औपचारिक रूप से Coq के लिए पुस्तकालयों के एक जोड़े में लिखा गया है , एक स्वचालित प्रमेय साबित करने वाला सहायक (कुछ खोजने के लिए coq रैखिक / मैट्रिक्स बीजगणित के लिए Google खोज)। यह एक शक्तिशाली प्रणाली है जो दुर्भाग्य से मानव संपर्क की आवश्यकता लगती है।
कुछ प्रमेय करने वाले लोगों के साथ बात करने के बाद वे इस तरह की चीज़ के लिए लॉजिक प्रोग्रामिंग (यानी प्रोलॉग, जिसे लेगरबेर ने भी सुझाया था) देखने की सलाह देते हैं। मेरे ज्ञान के लिए यह अभी तक नहीं किया गया है - मैं भविष्य में इसके साथ खेल सकता हूं।
अद्यतन: मैंने इसे Maude सिस्टम का उपयोग करके कार्यान्वित किया है । मेरा कोड github पर होस्ट किया गया है