<commit_before>#ifndef KAPS_MATRIX_H
#define KAPS_MATRIX_H

#include "matrix_t.h"

pbqp_matrix *pbqp_matrix_alloc(pbqp *pbqp, unsigned rows, unsigned cols);

/* Copy the given matrix. */
pbqp_matrix *pbqp_matrix_copy(pbqp *pbqp, pbqp_matrix *m);

pbqp_matrix *pbqp_matrix_copy_and_transpose(pbqp *pbqp, pbqp_matrix *m);

void pbqp_matrix_transpose(pbqp *pbqp, pbqp_matrix *mat);

/* sum += summand */
void pbqp_matrix_add(pbqp_matrix *sum, pbqp_matrix *summand);

void pbqp_matrix_set(pbqp_matrix *mat, unsigned row, unsigned col, num value);

num pbqp_matrix_get_col_min(pbqp_matrix *matrix, unsigned col_index, vector *flags);
num pbqp_matrix_get_row_min(pbqp_matrix *matrix, unsigned row_index, vector *flags);

void pbqp_matrix_sub_col_value(pbqp_matrix *matrix, unsigned col_index,
		vector *flags, num value);
void pbqp_matrix_sub_row_value(pbqp_matrix *matrix, unsigned row_index,
		vector *flags, num value);
<commit_msg>Added function declarations.<commit_after>#ifndef KAPS_MATRIX_H
#define KAPS_MATRIX_H

#include "matrix_t.h"

pbqp_matrix *pbqp_matrix_alloc(pbqp *pbqp, unsigned rows, unsigned cols);

/* Copy the given matrix. */
pbqp_matrix *pbqp_matrix_copy(pbqp *pbqp, pbqp_matrix *m);

pbqp_matrix *pbqp_matrix_copy_and_transpose(pbqp *pbqp, pbqp_matrix *m);

void pbqp_matrix_transpose(pbqp *pbqp, pbqp_matrix *mat);

/* sum += summand */
void pbqp_matrix_add(pbqp_matrix *sum, pbqp_matrix *summand);

void pbqp_matrix_set(pbqp_matrix *mat, unsigned row, unsigned col, num value);

num pbqp_matrix_get_col_min(pbqp_matrix *matrix, unsigned col_index, vector *flags);
num pbqp_matrix_get_row_min(pbqp_matrix *matrix, unsigned row_index, vector *flags);

void pbqp_matrix_set_col_value(pbqp_matrix *mat, unsigned col, num value);
void pbqp_matrix_set_row_value(pbqp_matrix *mat, unsigned row, num value);

void pbqp_matrix_sub_col_value(pbqp_matrix *matrix, unsigned col_index,
		vector *flags, num value);
void pbqp_matrix_sub_row_value(pbqp_matrix *matrix, unsigned row_index,
		vector *flags, num value);

{'fraction_non_alphanumeric': 0.09535573122529645, 'fraction_numerical': 0.0, 'mean_word_length': 7.920704845814978, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6128149', 'n_tokens_mistral': 755, 'n_tokens_neox': 769, 'n_words': 176}