国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

陶哲軒必備助手之人工智能數(shù)學驗證+定理發(fā)明工具LEAN4 [線性代數(shù)篇2]矩陣乘積的行列式變形(上篇)

這篇具有很好參考價值的文章主要介紹了陶哲軒必備助手之人工智能數(shù)學驗證+定理發(fā)明工具LEAN4 [線性代數(shù)篇2]矩陣乘積的行列式變形(上篇)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

視頻鏈接:

陶哲軒必備助手之人工智能數(shù)學驗證+定理發(fā)明工具LEAN4 [線性代數(shù)篇2]矩陣乘積的行列式變形(上篇)_嗶哩嗶哩_bilibili

import Mathlib.LinearAlgebra.Matrix.Determinant

import Mathlib.GroupTheory.Perm.Fin

import Mathlib.GroupTheory.Perm.Sign

import Mathlib.Data.Real.Sqrt

import Mathlib.Data.List.Perm

-- 本文件最終目標是證明行列式中矩陣相乘的運算規(guī)律:第二篇

-- det (M * N) = det M * det N

universe u v w z

open Equiv Equiv.Perm Finset Function

namespace Matrix --目的是避免模糊定義mul_apply

open Matrix BigOperators

variable {m n : Type*} [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m]

variable {R : Type v} [CommRing R]

local notation "ε " σ:arg => ((sign σ : ?) : R) -- “元編程”,創(chuàng)造新符號,ε 接收一個參數(shù),結果就是sign σ

set_option linter.unusedVariables false --

-- 沒講到的部分會分別用“前置知識”視頻發(fā)出來,先記???


?

def detRowAlternating2

: AlternatingMap R (n → R) R n --- 最后這個參數(shù)n屬于補充說明,實際形式上只需傳三個參數(shù)即可

:=

MultilinearMap.alternatization ( -- ???基本的要素都齊了,求和,連乘,全體置換,置換的符號。具體邏輯還不懂

(MultilinearMap.mkPiAlgebra R n R).compLinearMap

LinearMap.proj)

abbrev det2 (M : Matrix n n R): R :=

(detRowAlternating2) M

def printPerms (n : ?) : List (List ?) :=

List.map List.reverse (List.permutations (List.range n))

-- Perm n

-- #eval printPerms 4

-- #eval printPerms 3


?

-- 正式開始:

lemma MainGoal_1 (M N : Matrix n n R):

det (M * N)

= ∑ p : n → n,

∑ σ : Perm n,

(ε σ)

*

∏ i,

M (σ i) (p i) * N (p i) i

:= by

simp only [det_apply']

simp only [mul_apply]

simp only [prod_univ_sum] -- ???與"先連加,再連乘,等于,先連乘,再連加",還有笛卡爾積“全覆蓋”,相關的定理

-- 如何理解Fintype.piFinset t

-- 假設 t 是一個從集合 {1, 2} 到有限集合的映射,其中 t(1) = {a, b},t(2) = {x, y}。

-- 那么 Fintype.piFinset t 就表示集合 {(a, x), (a, y), (b, x), (b, y)},即這兩個集合的笛卡爾積。

-- 舉例說明prod_univ_sum

-- 首先,讓我們假設集合α包含元素1和2,對應的集合分別為t1和t2。而且我們有以下映射關系:

-- t1 = {a, b}, t2 = {x, y}

-- 對應的函數(shù)f如下:

-- f(1, a) = 2, f(1, b) = 3, f(2, x) = 1, f(2, y) = 4

-- 現(xiàn)在我們來計算左側和右側的值。

-- 左側:(∏ a, ∑ b in t a, f a b)

-- = (∑ b in t1, f(1, b)) * (∑ b in t2, f(2, b))

-- = (f(1, a) + f(1, b)) * (f(2, x) + f(2, y))

-- = (2 + 3) * (1 + 4)

-- = 5 * 5

-- = 25

-- 右側:∑ p in Fintype.piFinset t, ∏ x, f x (p x)

-- = f(1, a) * f(2, x) + f(1, a) * f(2, y) + f(1, b) * f(2, x) + f(1, b) * f(2, y)

-- = 2 * 1 + 2 * 4 + 3 * 1 + 3 * 4

-- = 2 + 8 + 3 + 12

-- = 25

-- 因此,根據(jù) Finset.prod_univ_sum 定理,左側和右側的值相等,都等于25。

simp only [mul_sum] --???用gpt舉個例子來理解

simp only [Fintype.piFinset_univ] --???Fintype.piFinset的使用 -- 1,2,3 =》 3,2,1

rw [Finset.sum_comm] --???兩階求和順序互換的相關定理

done

lemma MainGoal_2 (M N : Matrix n n R):

∑ p : n → n,

∑ σ : Perm n,

ε σ

*

∏ i,

M (σ i) (p i) * N (p i) i

= ∑ p in (@univ (n → n) _).filter Bijective,

∑ σ: Perm n,

(ε σ)

*

(∏ i,

M (σ i) (p i) * N (p i) i)

:= by

apply Eq.symm

apply sum_subset --s? ? s?, x ∈ s?, x ? s?的情況為0,則可以直接去掉

· intro h1 h2

exact mem_univ h1

· intros h3 h4 h5

apply det_mul_aux -- ???這個先不理解,后面專門出一個視頻來教如何讀證明并且分解證明成策略模式。

-- 一個先連乘,再連加的東西,結果是0,關鍵是非雙射導致的,有點意思

-- 舉個例子,p=[1,1],Perm 2只有兩個變換:1.恒等變換,簡稱id;2.換位變換,簡稱swap

-- ε id * (M (id 1)(p 1) * N (p 1)1) * (M (id 2)(p 2) * N (p 2)2)

-- = 1 * (M 1 1 * N 1 1) * (M 2 1 * N 1 2)

-- = M 1 1 * N 1 1 * M 2 1 * N 1 2

-- ε swap * (M (swap 1)(p 1) * N (p 1)1) * (M (swap 2)(p 2) * N (p 2)2)

-- = -1 * (M 2 1 * N 1 2) * (M 1 1 * N 1 1)

-- = -M 2 1 * N 1 2 * M 1 1 * N 1 1

simp only [mem_filter] at h5 -- 就是filter的定義唄,是屬于某個集合里面的,而且滿足條件1

simp only [mem_univ] at h5

simp only [true_and_iff] at h5

set h6 := fun x ? h3 x -- 寫這個h6,h7是為了補充說明,其實這里h6就是和h3同一個映射,寫法不一樣而已

-- have h7: h6=h3 -- 為了讓大家理解

-- := by

-- exact rfl

exact h5

done

lemma MainGoal_3 (M N : Matrix n n R):

∑ p in (@univ (n → n) _).filter Bijective,

∑ σ: Perm n,

ε σ

*

(∏ i,

M (σ i) (p i) * N (p i) i)

=

∑ τ : Perm n,

∑ σ : Perm n,

(ε σ)

*

(∏ i,

M (σ i) (τ i) * N (τ i) i)

:= by

rw [sum_comm]

rw [sum_comm] -- 這兩步sum_comm相當于沒變,只改成了x,y

refine' sum_bij _ _ _ _ _ -- ???這個需要問一下gpt找到數(shù)學世界里的對應定理名稱。

-- 不一樣的定義域s、t,不同的函數(shù)f、g,求和相同,需要什么條件呢。5個條件

-- 舉例:

-- 假設我們有以下集合和映射:

-- 令 α = {1, 2, 3},即集合 {1, 2, 3}。

-- 令 β = {a, b, c},即集合 {a, b, c}。

-- 令 γ = {x, y, z},即集合 {x, y, z}。

-- 定義函數(shù) f: α → β 和 g: γ → β 如下:

-- 對于 f,我們定義 f(1) = a,f(2) = b,f(3) = c。

-- 對于 g,我們定義 g(x) = a,g(y) = b,g(z) = c。

-- 接下來,定義函數(shù) i: α → γ 如下:

-- i(1) = x

-- i(2) = y

-- i(3) = z

-- 現(xiàn)在,我們可以檢查定理的條件是否滿足:

-- 映射關系 (h): 對于所有 a 屬于 {1, 2, 3},我們有 f a = g (i a)。

-- 這是滿足的,例如,對于 a = 1,我們有 f(1) = a 和 g(i(1)) = g(x) = a。

-- i 是單射 (i_inj): 如果 i a? = i a?,則 a? = a?。

-- 這是滿足的,因為 i 的定義是一對一的,不同的 a 映射到不同的 γ 中的元素。

-- i 是滿射 (i_surj): 對于任意 b 屬于 {x, y, z},存在 a 屬于 {1, 2, 3},使得 b = i a。

-- 這也是滿足的,因為 i 的定義覆蓋了整個 γ。

-- 如果這些條件滿足,我們可以應用定理,從而得出:

-- [

-- \prod_{x \in {1, 2, 3}} f(x) = \prod_{x \in {x, y, z}} g(x)

-- ]

-- 即,

-- [

-- abc = abc

-- ]

· intros ih1 ih2 -- 這里ih1潛臺詞是隨機的ih1

have ih3:= (mem_filter.mp ih2).right

have ih4:= ofBijective ih1 ih3 --???現(xiàn)實中的意義有待

simp only [Perm]

exact ih4 -- 如果這里定義錯了,下面滿盤皆輸

-- 注意不能像以下這樣定義

-- intros ih1 ih2

-- have ih3:= Equiv.refl n

-- simp only [Perm]

-- exact ih3

· intro h1

intro h2 --原來這里會用到refine1的證明

simp only [mem_univ]

· intros h_1 h_2

have h_3:= mem_filter.1 h_2

obtain ?h_4,h_5? := h_3

simp only [id_eq]

set h_6 := ofBijective h_1 h_5 -- h_1和h_6相等嗎?,由ofBijective的toFun定義知道就是h_1

-- have h1_equal_h6 : h_1=h_6 -- 為了說明而寫的,因為ofBijective的實際效果是和toFun相同的,是定義導致的相同

-- := by

-- exact rfl

rfl

· intros inj_1 inj_2 inj_3 inj_4 inj_5

simp only [id_eq] at inj_5 -- 看起來很明顯,但就是完成不了

ext x

have inj_6:= ofBijective_apply inj_1

have inj_7:= ofBijective_apply inj_2

have bij_inj_3:= (mem_filter.mp inj_3).right

rw [← inj_6]

rw[inj_5,

inj_7]

done

· intros b x

refine' Exists.intro b _ -- 要證明存在某個原始使得某個命題成立,只需要,給出例子,然后讓例子代入后面描述的命題中,該命題為真即可。

-- 比如這里就是把a全部替換成了b

-- 如果第二個參數(shù)中不用直接替換的,比如下面這行,就直接證明第二個參數(shù)代表的命題即可

refine' Exists.intro _ _ -- 比如這里ha在第二個參數(shù)中沒有需要替換的,直接證明第二個命題即可

· refine' mem_filter.mpr _

constructor

· refine' mem_univ (↑b)

· exact Equiv.bijective b

· refine' coe_fn_injective _ --在外層套了一個不變的映射

simp only [id_eq]

simp only [FunLike.coe_fn_eq]

refine' Equiv.ext _

intros x2

-- ↑(ofBijective ↑b (_ : Bijective ↑b))前面這個和↑b作用效果一樣嗎?查一下ofBijective的toFun := f定義就知道,就是f本身

-- 下面是進一步的探究,不看了

-- have equalTest: (ofBijective ↑b (_ : Bijective ↑b)) = b

-- := by

-- refine ((fun {α β} {e? e?} ? Equiv.coe_inj.mp) rfl).symm

rfl

done

done




?

end Matrix文章來源地址http://www.zghlxwxcb.cn/news/detail-774710.html

到了這里,關于陶哲軒必備助手之人工智能數(shù)學驗證+定理發(fā)明工具LEAN4 [線性代數(shù)篇2]矩陣乘積的行列式變形(上篇)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 人工智能與語音助手:未來的智能助手

    語音助手是人工智能領域的一個重要應用,它可以通過自然語言處理和語音識別技術來理解和回答用戶的問題。在過去的幾年里,語音助手技術已經(jīng)取得了顯著的進展,例如蘋果的Siri、谷歌的Google Assistant、亞馬遜的Alexa等。這些語音助手可以幫助用戶完成各種任務,如設置鬧

    2024年02月22日
    瀏覽(99)
  • 人工智能語音助手:如何實現(xiàn)智能助手的實時語音監(jiān)控功能?

    作者:禪與計算機程序設計藝術 隨著人工智能技術的快速發(fā)展,語音助手已經(jīng)成為人們?nèi)粘I钪胁豢苫蛉钡闹悄苤?。作為人工智能助手,實時語音監(jiān)控是必不可少的。本文將介紹如何更好地實現(xiàn)智能助手的實時語音監(jiān)控功能,為用戶提供更加優(yōu)質(zhì)的服務。 1 基本概念解釋

    2024年02月08日
    瀏覽(92)
  • ChatGPT:人工智能助手的新時代

    隨著人工智能的不斷發(fā)展,自然語言處理技術正逐漸成為我們與計算機交互的重要方式之一。其中,ChatGPT作為一種基于大規(guī)模預訓練語言模型的對話生成系統(tǒng),正引領著人工智能助手的新時代。本篇博客將介紹ChatGPT的原理、應用場景以及優(yōu)勢,幫助讀者更好地了解和應用這

    2024年02月05日
    瀏覽(36)
  • 那些好用的人工智能寫作助手(1)——Writesonic

    Writesonic - ToolAI最全面最完整的AI工具集合 Writesonic 是一款人工智能驅動的寫作助手,致力于幫助用戶快速、高效地撰寫各種類型的文本內(nèi)容。它可以在幾秒鐘內(nèi)生成文章、博客文章、登錄頁面、谷歌廣告、Facebook 廣告、產(chǎn)品描述、電子郵件等。具有AI文章創(chuàng)意,簡介,大綱,

    2024年02月12日
    瀏覽(30)
  • 那些好用的人工智能寫作助手(2)——Rytr

    Rytr-ToolAI Rytr是一款人工智能寫作助手,可以幫助快速生成高質(zhì)量的文本內(nèi)容。只需輸入或簡要說明,Rytr就可以生成完整的文章、博客、電子郵件、社交媒體帖子和其他類型的文本內(nèi)容。Rytr不僅可以幫助您節(jié)省時間和精力,還可以提高您的寫作效率和質(zhì)量。同時,Ryt

    2024年02月11日
    瀏覽(24)
  • 數(shù)學與人工智能:數(shù)學在人工智能中的應用

    人工智能(Artificial Intelligence)是一門研究如何讓機器具有智能行為的學科。在過去的幾十年里,人工智能已經(jīng)取得了顯著的進展,從簡單的規(guī)則引擎到復雜的深度學習網(wǎng)絡,人工智能已經(jīng)成功地解決了許多復雜的問題。然而,在這個過程中,數(shù)學在人工智能中的應用也是不可或

    2024年02月21日
    瀏覽(24)
  • 人工智能基礎部分24-人工智能的數(shù)學基礎,匯集了人工智能數(shù)學知識最全面的概況

    人工智能基礎部分24-人工智能的數(shù)學基礎,匯集了人工智能數(shù)學知識最全面的概況

    、 大家好,我是微學AI,今天給大家介紹一下人工智能基礎部分24-人工智能的數(shù)學基礎,匯集了人工智能數(shù)學知識最全面的概況,深度學習是一種利用多層神經(jīng)網(wǎng)絡對數(shù)據(jù)進行特征學習和表示學習的機器學習方法。要全面了解深度學習的數(shù)學基礎,需要掌握這些數(shù)學知識:向

    2024年02月21日
    瀏覽(102)
  • 【人工智能】之深入理解 AI Agent:超越代碼的智能助手(2)

    人工智能(AI)正在以前所未有的速度迅猛發(fā)展,而AI Agent(智能代理)則是這一領域中備受矚目的一環(huán)。 AI Agent 不僅僅是程序的執(zhí)行者,更是能夠感知、學習和交互的智能實體。本文將深入探討什么是 AI Agent ,以及這一概念在當今科技領域中的重要性。 AI Agent 是指一種能夠

    2024年01月19日
    瀏覽(41)
  • 人工智能技術在智能語音助手中的應用:從智能家居到智慧交通

    作者:禪與計算機程序設計藝術 引言 1.1. 背景介紹 隨著科技的發(fā)展,人工智能技術越來越受到人們的關注。人工智能助手作為一種新型的技術,已經(jīng)成為人們生活中不可或缺的一部分。智能語音助手作為人工智能助手的一種,受到越來越多的用戶青睞。智能語音助手可以實

    2024年02月07日
    瀏覽(95)
  • 使用人工智能助手 Github Copilot 進行編程 02

    使用人工智能助手 Github Copilot 進行編程 02

    本章涵蓋了 在您的系統(tǒng)上設置 Python、VS Code 和 Copilot 引? Copilot 設計流程 Copilot 的價值在于基本的數(shù)據(jù)處理任務 本章將幫助您在自己的計算機上開始使用 Copilot,并熟悉與其的交互方式。在設置好Copilot 后,我們將要求您盡可能跟隨我們的示例進行操作。實踐是最好的學習方

    2024年01月25日
    瀏覽(31)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包