อ่าน 7 นาที
พีชคณิตเอฟ
Category theory/Functional programming/ลิงก์ย้อนกลับเทมเพลต Webarchive
ในทางคณิตศาสตร์โดยเฉพาะอย่างยิ่งในทฤษฎีหมวดหมู่พีชคณิตF ขยายแนวคิดของโครงสร้างพีชคณิตการเขียนกฎพีชคณิตใหม่ในรูปของมอร์ฟิซึม จะขจัดการอ้างอิงถึงองค์ประกอบที่มีปริมาณออกจากสัจพจน์
พีชคณิตเอฟ

ในทางคณิตศาสตร์โดยเฉพาะอย่างยิ่งในทฤษฎีหมวดหมู่พีชคณิตF ขยายแนวคิดของโครงสร้างพีชคณิตการเขียนกฎพีชคณิตใหม่ในรูปของมอร์ฟิซึม จะขจัดการอ้างอิงถึงองค์ประกอบที่มีปริมาณออกจากสัจพจน์ ทั้งหมดและกฎพีชคณิตเหล่านี้สามารถเชื่อมโยงเข้าด้วยกันได้ในรูปของฟังก์ชัน เดี่ยว Fซึ่งก็คือ ลายเซ็น
F -algebra ยังสามารถใช้เพื่อแทนโครงสร้างข้อมูลที่ใช้ในการเขียนโปรแกรมเช่นรายการและต้นไม้ได้ อีกด้วย
แนวคิดหลักที่เกี่ยวข้องคือ พีชคณิต F เริ่มต้น ซึ่งอาจใช้เพื่อรวบรวมหลักการอุปนัย และโคพีชคณิตFโครงสร้างคู่ขนาน
คำนิยาม
ถ้าเป็นหมวดหมู่และเป็นเอนโดฟังก์ชันของแล้วพีชคณิตคือทูเปิลโดยที่เป็นวัตถุของและเป็น มอ ร์ฟิซึม วัตถุนี้เรียกว่าตัวพาของพีชคณิต เมื่อบริบทอนุญาต พีชคณิตมักจะถูกอ้างถึงโดยใช้ตัวพาเพียงอย่างเดียวแทนที่จะใช้ทูเปิล
โฮโมมอร์ฟิซึมจากพีชคณิต-algebra ไปยังพีชคณิต -algebra คือ-morphism ที่เป็นไปตามแผนภาพการสลับที่ ต่อไปนี้ :

เมื่อมีมอร์ฟิซึมเหล่านี้แล้ว พีชคณิต-algebras จึงประกอบกันเป็นหมวดหมู่
โครงสร้างคู่ขนานคือ-coalgebras ซึ่งเป็นวัตถุร่วมกับมอร์ฟิซึม
ตัวอย่าง
กลุ่ม
ตามหลักคลาสสิกกลุ่มคือเซตที่มีกฎของกลุ่ม โดยที่ ซึ่งสอดคล้อง กับสัจพจน์สามข้อ ได้แก่ การมีอยู่ของสมาชิกเอกลักษณ์ การมีอยู่ของสมาชิกผกผันสำหรับแต่ละสมาชิกในกลุ่ม และคุณสมบัติการสลับที่
เพื่อให้เข้าใจเรื่องนี้ในกรอบเชิงหมวดหมู่ ก่อนอื่นให้กำหนดเอกลักษณ์และตัวผกผันเป็นฟังก์ชัน (มอร์ฟิซึมของเซต) โดยที่และโดยที่แทนเซตที่มีสมาชิกหนึ่งตัวซึ่งทำให้สามารถระบุสมาชิกด้วยมอร์ฟิซึมได้
ดังนั้นจึงสามารถเขียนสัจพจน์ของกลุ่มในรูปของฟังก์ชันได้ (โปรดสังเกตว่าไม่มีตัวบ่งปริมาณเชิงมีอยู่):
- ,
- ,
- .
จากนั้นสามารถแสดงสิ่งนี้ด้วยแผนภาพการสลับตำแหน่งได้ดังนี้: [ 1 ] [ 2 ]
ตอนนี้ใช้โคโปรดักต์ ( การรวมกันที่ไม่ซ้ำกันของเซต) เพื่อเชื่อมมอร์ฟิซึมทั้งสามเข้าด้วยกันเป็นหนึ่งเดียว: ตาม
ดังนั้น กลุ่มหนึ่งจึงเป็นพีชคณิต-algebra โดยที่เป็นฟังก์ชันอย่างไรก็ตาม ข้อความกลับกันนั้นไม่จำเป็นต้องเป็นจริงเสมอไปพีชคณิต -algebra บางตัวที่เป็นฟังก์ชันอาจไม่ใช่กลุ่ม
โครงสร้างข้างต้นใช้เพื่อกำหนดวัตถุกลุ่มบนหมวดหมู่ใดๆ ที่มีผลคูณจำกัดและวัตถุปลายทาง เมื่อหมวดหมู่นั้นยอมรับผลคูณ ร่วมจำกัด วัตถุกลุ่มจะเป็นพีชคณิต -algebra ตัวอย่างเช่น กลุ่มจำกัดเป็นพีชคณิต -algebra ในหมวดหมู่ของเซตจำกัดและกลุ่ม Lieเป็นพีชคณิต -algebra ในหมวดหมู่ของแมนิโฟลด์เรียบที่มีแผนที่เรียบ
โครงสร้างพีชคณิต
เมื่อก้าวไปอีกขั้นจากพีชคณิตสากลโครงสร้างพีชคณิตส่วนใหญ่เป็น พีชคณิต Fตัวอย่างเช่นกลุ่มอาเบเลียนเป็น พีชคณิต Fสำหรับฟังก์ชันF ( G ) = 1 + G + G × Gเช่นเดียวกับกลุ่ม โดยมีสัจพจน์เพิ่มเติมสำหรับการสลับที่: m ∘ t = mโดยที่t ( x , y ) = ( y , x ) คือทรานสโพสบน G x G
โมโนอิดคือพีชคณิตF ที่มีลายเซ็น F ( M ) = 1 + M × MในทำนองเดียวกันเซมิกรุปคือพีชคณิตF ที่มีลายเซ็น F ( S ) = S × S
ริงโดเมนและฟิลด์ล้วนเป็น พีชคณิต Fที่มีลายเซ็นซึ่งประกอบด้วยกฎสองข้อ +,•: R × R → R, เอกลักษณ์การบวก 0: 1 → R , เอกลักษณ์การคูณ 1: 1 → Rและตัวผกผันการบวกสำหรับแต่ละองค์ประกอบ -: R → R เนื่องจากฟังก์ชันทั้งหมดเหล่านี้มี โคโดเมน เดียวกันคือ Rจึงสามารถรวมเข้าเป็นฟังก์ชันลายเซ็นเดียวได้คือ 1 + 1 + R + R × R + R × R → Rโดยมีสัจพจน์เพื่อแสดงความสัมพันธ์การกระจายและอื่นๆ ทำให้ริงเป็น พีชคณิต Fบนหมวดหมู่ของเซตที่มีลายเซ็น 1 + 1 + R + R × R + R × R
อีกทางเลือกหนึ่ง เราสามารถพิจารณาฟังก์ชันF ( R ) = 1 + R × Rในหมวดหมู่ของกลุ่มอาเบเลียนในบริบทนั้น การคูณเป็นโฮโมมอร์ฟิซึม หมายความว่าm ( x + y , z ) = m ( x , z ) + m ( y , z ) และm ( x , y + z ) = m ( x , y ) + m ( x , z ) ซึ่งเป็นเงื่อนไขการกระจายตัวอย่างแม่นยำ ดังนั้น วงแหวนจึงเป็น พีชคณิต Fที่มีลายเซ็น 1 + R × Rเหนือหมวดหมู่ของกลุ่มอาเบเลียนซึ่งสอดคล้องกับสัจพจน์สองข้อ (การสมาคมและเอกลักษณ์สำหรับการคูณ)
เมื่อเราพิจารณาถึงปริภูมิเวกเตอร์และโมดูลฟังก์ชันลายเซ็นจะรวมการคูณสเกลาร์k × E → Eและลายเซ็นF ( E ) = 1 + E + k × Eจะถูกกำหนดพารามิเตอร์โดยkบนหมวดหมู่ของฟิลด์หรือริง
พีชคณิตเหนือฟิลด์สามารถมองได้ว่าเป็นพีชคณิตF ที่มีลายเซ็น 1 + 1 + A + A × A + A × A + k × Aเหนือหมวดหมู่ของเซต ที่มีลายเซ็น 1 + A × Aเหนือหมวดหมู่ของโมดูล (โมดูลที่มีการคูณภายใน) และที่มีลายเซ็นk × Aเหนือหมวดหมู่ของริง (ริงที่มีการคูณด้วยสเกลาร์) เมื่อพีชคณิตเหล่านั้นมีคุณสมบัติการสลับที่และเอกภาพ
โครงตาข่าย
โครงสร้างทางคณิตศาสตร์ทั้งหมดไม่ได้เป็นF -algebra เสมอไป ตัวอย่างเช่นposet Pอาจถูกกำหนดในเชิงหมวดหมู่ด้วยมอร์ฟิซึมs : P × P → Ω บนตัวจำแนกวัตถุย่อย (Ω = {0,1} ในหมวดหมู่ของเซต และs ( x , y )=1 เฉพาะเมื่อx ≤ y เท่านั้น ) สัจพจน์ที่จำกัดมอร์ฟิซึมsให้กำหนด poset สามารถเขียนใหม่ได้ในรูปของมอร์ฟิซึม อย่างไรก็ตาม เนื่องจากโคโดเมนของsคือ Ω ไม่ใช่Pดังนั้นจึงไม่ใช่F -algebra
อย่างไรก็ตามแลตทิซซึ่งเป็นลำดับบางส่วนที่ทุกๆ สององค์ประกอบมีค่าสูงสุดและค่าต่ำสุด และโดยเฉพาะอย่างยิ่งลำดับทั้งหมดเป็น พีชคณิต Fเนื่องจากสามารถนิยามได้อย่างเทียบเท่ากันในแง่ของการดำเนินการทางพีชคณิต: x ∨ y = inf( x , y ) และx ∧ y = sup( x , y ) โดยอยู่ภายใต้สัจพจน์บางประการ (การสลับที่ การเชื่อมโยง การดูดซับ และการเอกลักษณ์) ดังนั้น แลตทิซจึงเป็น พีชคณิต Fที่มีลายเซ็นP x P + P x Pมักกล่าวกันว่าทฤษฎีแลตทิซดึงเอาทั้งทฤษฎีลำดับและพีชคณิตสากลมาใช้
การเกิดซ้ำ
พิจารณาฟังก์ชันที่ส่งเซตไปยังโดยที่แทนหมวดหมู่ของเซต แทน ผลคูณร่วมปกติที่กำหนดโดยการรวมกันแบบไม่ทับซ้อนกันและคือวัตถุปลายทาง (เช่น เซต เอกฐาน ใดๆ ) ดังนั้น เซต ของจำนวนธรรมชาติพร้อมกับฟังก์ชันซึ่งเป็นผลคูณร่วมของฟังก์ชันและจึงเป็นพีชคณิต F
พีชคณิตFเบื้องต้น
ถ้าหมวดหมู่ของ พีชคณิต Fสำหรับเอนโดฟังก์ชันF ที่กำหนด มีวัตถุเริ่มต้นจะเรียกว่าพีชคณิตเริ่มต้นพีชคณิตในตัวอย่างข้างต้นเป็นพีชคณิตเริ่มต้นโครงสร้างข้อมูลจำกัด ต่างๆ ที่ใช้ในการเขียนโปรแกรมเช่นรายการและต้นไม้สามารถหาได้จากพีชคณิตเริ่มต้นของเอนโดฟังก์ชันเฉพาะ
ประเภทที่กำหนดโดยใช้โครงสร้างจุดคงที่น้อยที่สุด ที่มีฟังก์ชัน Fสามารถถือได้ว่าเป็น พีชคณิต F เริ่มต้น โดยมีเงื่อนไขว่าความเป็นพารามิเตอร์เป็นไปตามประเภท[ 3 ]
ดูเพิ่มเติมที่พีชคณิต สากล
เทอร์มินัลF -คอลพีชคณิต
ใน ทาง คู่ขนานความสัมพันธ์ที่คล้ายคลึงกันมีอยู่ระหว่างแนวคิดของจุดคงที่ที่ใหญ่ที่สุดและเทอร์มินัลF -coalgebra สิ่งเหล่านี้สามารถใช้เพื่ออนุญาตให้ วัตถุอนันต์ ที่อาจเกิดขึ้นได้ในขณะที่ยังคงรักษาคุณสมบัติการทำให้เป็นมาตรฐานที่แข็งแกร่ง [ 3 ]ใน ภาษาการเขียนโปรแกรม Charity ที่ทำให้เป็นมาตรฐานอย่างแข็งแกร่ง (กล่าวคือแต่ละโปรแกรมสิ้นสุดลงในภาษานี้) ประเภท ข้อมูลแบบ เหนี่ยวนำร่วมสามารถใช้เพื่อให้ได้ผลลัพธ์ที่น่าประหลาดใจ ทำให้สามารถกำหนด โครงสร้าง การค้นหาเพื่อนำฟังก์ชัน"ที่แข็งแกร่ง" เช่น ฟังก์ชัน Ackermannไป ใช้ได้ [ 4 ]
ดูเพิ่มเติม
หมายเหตุ
- ^ลูกศรแนวตั้งที่ไม่มีป้ายกำกับในแผนภาพที่สองจะต้องไม่ซ้ำกัน เนื่องจาก * เป็นสัญลักษณ์สุดท้าย
- ^ตามหลักแล้ว (i,id) และ (id,i) มีป้ายกำกับที่ไม่สอดคล้องกับแผนภาพอื่นๆ เนื่องจากมอร์ฟิซึมเหล่านี้ "ทำให้เป็นแนวทแยง" ก่อน
- ^ a b Philip Wadler: ประเภทเรียกซ้ำฟรี! เก็บถาวรเมื่อ 2007-10-16 ที่Wayback Machineมหาวิทยาลัยกลาสโกว์ มิถุนายน 1990 ฉบับร่าง
- ^ Robin Cockett : ข้อคิด เพื่อการกุศล (ไฟล์ ps.gzเก็บถาวรเมื่อ 2020-12-29ที่ Wayback Machine )
External links
- Categorical programming with inductive and coinductive types (Archived 2020-11-30 at the Wayback Machine) by Varmo Vene
- Philip Wadler: Recursive types for free! (Archived 2020-11-30 at the Wayback Machine) University of Glasgow, June 1990. Draft.
- Algebra and coalgebra (Archived 2019-04-27 at the Wayback Machine) from CLiki
- B. Jacobs, J. Rutten: A Tutorial on (Co) Algebras and (Co) Induction. Bulletin of the European Association for Theoretical Computer Science, vol. 62, 1997, Archived 2021-02-12 at the Wayback Machine
- Understanding F-Algebras (Archived 2020-08-04 at the Wayback Machine) by Bartosz Milewski
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ พีชคณิตเอฟ
ในทางคณิตศาสตร์โดยเฉพาะอย่างยิ่งในทฤษฎีหมวดหมู่พีชคณิตF ขยายแนวคิดของโครงสร้างพีชคณิตการเขียนกฎพีชคณิตใหม่ในรูปของมอร์ฟิซึม จะขจัดการอ้างอิงถึงองค์ประกอบที่มีปริมาณออกจากสัจพจน์
คำนิยาม
ถ้าเป็น หมวดหมู่ และเป็นเอน โดฟังก์ชัน ของแล้วพีชคณิตคือทูเปิลโดยที่เป็น วัตถุ ของและเป็น มอ ร์ ฟิ ซึม วัตถุนี้เรียกว่า ตัว พา ของพีชคณิต เมื่อบริบทอนุญาต พีชคณิตมักจะถูกอ้างถึงโดยใช้ตัวพาเพียงอย่างเดียวแทนที่จะใช้ทูเปิล ซี {\displaystyle C} เอฟ : ซี → ซี...
กลุ่ม
ตามหลักคลาสสิก กลุ่ม คือเซตที่มี กฎของกลุ่ม โดยที่ ซึ่งสอดคล้อง กับสัจพจน์สามข้อ ได้แก่ การมีอยู่ของสมาชิกเอกลักษณ์ การมีอยู่ของสมาชิกผกผันสำหรับแต่ละสมาชิกในกลุ่ม และคุณสมบัติการสลับที่ จี {\displaystyle G} ม : จี × จี → จี {\displaystyle m:G\times...
โครงสร้างพีชคณิต
เมื่อก้าวไปอีกขั้นจาก พีชคณิตสากล โครงสร้างพีชคณิตส่วนใหญ่เป็น พีชคณิต F ตัวอย่างเช่น กลุ่มอาเบเลียน เป็น พีชคณิต F สำหรับฟังก์ชัน F ( G ) = 1 + G + G × G เช่นเดียวกับกลุ่ม โดยมีสัจพจน์เพิ่มเติมสำหรับการสลับที่: m ∘ t = m โดยที่ t ( x , y ) = ( y , x )...