En aquest document recollim les solucions numèriques d’alguns dels problemes d’àlgebra penjats al campus virtual, amb la intenció que serveixin per comprovar resultats. També pot servir com a mostra de com es fa servir el programa R per fer càlculs algebraics.

Relació de problemes 1. Fonaments matemàtics de CCAA (Universitat de Granada)

Els enunciats els podeu trobar a http://www.ugr.es/~ahurtado/PDF/ej1.pdf.

require(FRACTION)
require(Matrix)

Problema 2

(a<-rbind(c(1,2),c(3,-4)))
##      [,1] [,2]
## [1,]    1    2
## [2,]    3   -4
(b<-rbind(c(5,0),c(-6,7)))
##      [,1] [,2]
## [1,]    5    0
## [2,]   -6    7
a%*%a
##      [,1] [,2]
## [1,]    7   -6
## [2,]   -9   22
a%*%b
##      [,1] [,2]
## [1,]   -7   14
## [2,]   39  -28
b%*%b
##      [,1] [,2]
## [1,]   25    0
## [2,]  -72   49
a%*%a-a%*%b+b%*%b
##      [,1] [,2]
## [1,]   39  -20
## [2,] -120   99

La segona part no es pot fer.

Problema 6

Comprovació exemple:

(a<-rbind(c(1,2),c(2,4)))
##      [,1] [,2]
## [1,]    1    2
## [2,]    2    4
(b<-rbind(c(2,1),c(-1,-1/2)))
##      [,1] [,2]
## [1,]    2  1.0
## [2,]   -1 -0.5
a%*%b
##      [,1] [,2]
## [1,]    0    0
## [2,]    0    0
b%*%a
##      [,1] [,2]
## [1,]    4    8
## [2,]   -2   -4

Problema 7

(a<-rbind(c(3,6),c(5,7)))
##      [,1] [,2]
## [1,]    3    6
## [2,]    5    7
solve(a)
##            [,1]       [,2]
## [1,] -0.7777778  0.6666667
## [2,]  0.5555556 -0.3333333
fra.m(solve(a))
##      [,1]     [,2]    
## [1,] "-7 / 9" "2 / 3" 
## [2,] "5 / 9"  "-1 / 3"
(b<-rbind(c(1,2,-3),c(0,1,2),c(0,0,1)))
##      [,1] [,2] [,3]
## [1,]    1    2   -3
## [2,]    0    1    2
## [3,]    0    0    1
solve(b)
##      [,1] [,2] [,3]
## [1,]    1   -2    7
## [2,]    0    1   -2
## [3,]    0    0    1

Problema 8

(a<-rbind(c(3,8),c(5,10)))
##      [,1] [,2]
## [1,]    3    8
## [2,]    5   10
(b<-rbind(c(2,4),c(5,6)))
##      [,1] [,2]
## [1,]    2    4
## [2,]    5    6
(c<-rbind(c(1,6),c(2,10)))
##      [,1] [,2]
## [1,]    1    6
## [2,]    2   10
solve(b)
##        [,1]  [,2]
## [1,] -0.750  0.50
## [2,]  0.625 -0.25
solve(b)%*%c
##       [,1] [,2]
## [1,] 0.250 0.50
## [2,] 0.125 1.25
solve(a)
##      [,1] [,2]
## [1,] -1.0  0.8
## [2,]  0.5 -0.3
solve(a)%*%(c+b)
##      [,1] [,2]
## [1,]  2.6  2.8
## [2,] -0.6  0.2

Problema 15 i problema 17

(a<-rbind(c(1,2,-3),c(3,-1,2),c(5,3,-4)))
##      [,1] [,2] [,3]
## [1,]    1    2   -3
## [2,]    3   -1    2
## [3,]    5    3   -4
solve(a,c(-1,1,2))
## Error in solve.default(a, c(-1, 1, 2)): sistema es computacionalmente singular: número de condición recíproco = 1.81791e-17
det(a)
## [1] -6.217249e-15
rankMatrix(a)[1]
## [1] 2
(m<-cbind(a,c(-1,1,2)))
##      [,1] [,2] [,3] [,4]
## [1,]    1    2   -3   -1
## [2,]    3   -1    2    1
## [3,]    5    3   -4    2
rankMatrix(m)[1]
## [1] 3

Problema 18

(a<-rbind(c(0,-4,-1),c(1,1,1),c(1,-2,1),c(-1,2,0)))
##      [,1] [,2] [,3]
## [1,]    0   -4   -1
## [2,]    1    1    1
## [3,]    1   -2    1
## [4,]   -1    2    0
(b<-c(-7,2,-2,3))
## [1] -7  2 -2  3
(m<-cbind(a,b))
##                b
## [1,]  0 -4 -1 -7
## [2,]  1  1  1  2
## [3,]  1 -2  1 -2
## [4,] -1  2  0  3
rankMatrix(a)[1]
## [1] 3
rankMatrix(m)[1]
## [1] 4

Problema 19

a<-function(k){rbind(c(1,-1,-1,-2),c(1,k,1,1),c(1,2,5,7),c(2,1,4,5))}
rankMatrix(a(0))[1]
## [1] 2

Problemes complementaris

Els enunciats són a https://www.overleaf.com/read/qzbdpdyksnwy.

Determinants

Problema 1

(a<-rbind(c(1,2),c(3,4)))
##      [,1] [,2]
## [1,]    1    2
## [2,]    3    4
det(a)
## [1] -2
(a<-rbind(c(1,3,-5),c(3,-1,0),c(-2,0,1)))
##      [,1] [,2] [,3]
## [1,]    1    3   -5
## [2,]    3   -1    0
## [3,]   -2    0    1
det(a)
## [1] -1.110223e-15
(a<-rbind(c(1,1,0,-1),c(0,-2,3,0),c(0,-1,-1,1),c(1,1,0,0)))
##      [,1] [,2] [,3] [,4]
## [1,]    1    1    0   -1
## [2,]    0   -2    3    0
## [3,]    0   -1   -1    1
## [4,]    1    1    0    0
det(a)
## [1] 5