correcao do bug no set_diagonal e no test_set_diagonal