Typing linear algebra : a biproduct-oriented approach

Detalhes bibliográficos
Autor(a) principal: Macedo, Hugo Daniel
Data de Publicação: 2013
Outros Autores: Oliveira, José Nuno Fonseca
Tipo de documento: Artigo
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/1822/24649
Resumo: Interested in formalizing the generation of fast running code for linear algebra applications, the authors show how an index-free, calculational approach to matrix algebra can be developed by regarding matrices as morphisms of a category with biproducts. This shifts the traditional view of matrices as indexed structures to a type-level perspective analogous to that of the pointfree algebra of programming. The derivation of fusion, cancellation and abide laws from the biproduct equations makes it easy to calculate algorithms implementing matrix multiplication, the central operation of matrix algebra, ranging from its divide-and-conquer version to its vectorization implementation. From errant attempts to learn how particular products and coproducts emerge from biproducts, not only blocked matrix algebra is rediscovered but also a way of extending other operations (e.g. Gaussian elimination) blockwise, in a calculational style, is found. The prospect of building biproduct-based type checkers for computer algebra systems such as MatlabTM is also considered.
id RCAP_e227bd7aff304a7cac1b11d633c3a5a7
oai_identifier_str oai:repositorium.sdum.uminho.pt:1822/24649
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Typing linear algebra : a biproduct-oriented approachLinear algebraCategories of matricesAlgebra of programmingScience & TechnologyInterested in formalizing the generation of fast running code for linear algebra applications, the authors show how an index-free, calculational approach to matrix algebra can be developed by regarding matrices as morphisms of a category with biproducts. This shifts the traditional view of matrices as indexed structures to a type-level perspective analogous to that of the pointfree algebra of programming. The derivation of fusion, cancellation and abide laws from the biproduct equations makes it easy to calculate algorithms implementing matrix multiplication, the central operation of matrix algebra, ranging from its divide-and-conquer version to its vectorization implementation. From errant attempts to learn how particular products and coproducts emerge from biproducts, not only blocked matrix algebra is rediscovered but also a way of extending other operations (e.g. Gaussian elimination) blockwise, in a calculational style, is found. The prospect of building biproduct-based type checkers for computer algebra systems such as MatlabTM is also considered.Fundação para a Ciência e a Tecnologia (FCT)ElsevierUniversidade do MinhoMacedo, Hugo DanielOliveira, José Nuno Fonseca20132013-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/articleapplication/pdfhttp://hdl.handle.net/1822/24649engMO120167-6423DOI:10.1016/j.scico.2012.07.01210.1016/j.scico.2012.07.012"http://www.sciencedirect.com/science/article/pii/S0167642312001402info:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-07-21T12:02:41Zoai:repositorium.sdum.uminho.pt:1822/24649Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T18:52:43.749043Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Typing linear algebra : a biproduct-oriented approach
title Typing linear algebra : a biproduct-oriented approach
spellingShingle Typing linear algebra : a biproduct-oriented approach
Macedo, Hugo Daniel
Linear algebra
Categories of matrices
Algebra of programming
Science & Technology
title_short Typing linear algebra : a biproduct-oriented approach
title_full Typing linear algebra : a biproduct-oriented approach
title_fullStr Typing linear algebra : a biproduct-oriented approach
title_full_unstemmed Typing linear algebra : a biproduct-oriented approach
title_sort Typing linear algebra : a biproduct-oriented approach
author Macedo, Hugo Daniel
author_facet Macedo, Hugo Daniel
Oliveira, José Nuno Fonseca
author_role author
author2 Oliveira, José Nuno Fonseca
author2_role author
dc.contributor.none.fl_str_mv Universidade do Minho
dc.contributor.author.fl_str_mv Macedo, Hugo Daniel
Oliveira, José Nuno Fonseca
dc.subject.por.fl_str_mv Linear algebra
Categories of matrices
Algebra of programming
Science & Technology
topic Linear algebra
Categories of matrices
Algebra of programming
Science & Technology
description Interested in formalizing the generation of fast running code for linear algebra applications, the authors show how an index-free, calculational approach to matrix algebra can be developed by regarding matrices as morphisms of a category with biproducts. This shifts the traditional view of matrices as indexed structures to a type-level perspective analogous to that of the pointfree algebra of programming. The derivation of fusion, cancellation and abide laws from the biproduct equations makes it easy to calculate algorithms implementing matrix multiplication, the central operation of matrix algebra, ranging from its divide-and-conquer version to its vectorization implementation. From errant attempts to learn how particular products and coproducts emerge from biproducts, not only blocked matrix algebra is rediscovered but also a way of extending other operations (e.g. Gaussian elimination) blockwise, in a calculational style, is found. The prospect of building biproduct-based type checkers for computer algebra systems such as MatlabTM is also considered.
publishDate 2013
dc.date.none.fl_str_mv 2013
2013-01-01T00:00:00Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/article
format article
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/1822/24649
url http://hdl.handle.net/1822/24649
dc.language.iso.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv MO12
0167-6423
DOI:10.1016/j.scico.2012.07.012
10.1016/j.scico.2012.07.012
"http://www.sciencedirect.com/science/article/pii/S0167642312001402
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Elsevier
publisher.none.fl_str_mv Elsevier
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799132304502685696