Setting modulus q value other than 64 bit

I am trying to use the NTT-based polynomial multiplication implementation in the TFHE-rs library to improve polynomial multiplication time with a 56-bit prime modulus. However, I have found that the TFHE-rs library uses a default q value of 64 bits for computations. I tried to change the modulus q value by calling the function.
CiphertextModulus::try_new(mod_value).unwrap().
Calling the above function only works locally; its value is not reflected globally. I have confirmed the same from the computed result obtained after the modulus operation, which is a 64-bit value calculated using the default value of the TFHE-rs library, not the modulus value I set. So I need some help regarding setting the modulus value in the TFHE-rs library. If anyone point out proper way to set the modulus q value globally that will the be a great help. Also, any suggestion to set modulus q value will be a great help. Thank you for your help.

Hello @Tikaram_Sanyashi

Could you share your code so that we can take a look and see how we can assist ?

Regards

Hello @IceTDrinker,

Thanks for the reply. Sorry for the my limited foresight, actually I was using a concrete-core-1.0.2 on its backend with following signature for the GlweCiphertext

pub struct GlweCiphertext {
pub(crate) tensor: Tensor,
pub(crate) poly_size: PolynomialSize,
}

Rather than some sort of signature

pub struct GlweCiphertext<C: Container>
where
C::Element: UnsignedInteger,
{
data: C,
glwe_size: GlweSize,
polynomial_size: PolynomialSize,
ciphertext_modulus: CiphertextModulus<C::Element>,
}

that the recent TFHE library uses. Hence we got the mentioned problem.
Anyways thank.

concrete-core has been deprecated for a while so I won’t be able to provide support for it.

Is it working as expected with TFHE-rs?

Yes … I realized that. Thanks anyways.

Are you managing to do what you want with TFHE-rs ?

We are currently busy with some other problem we will start on First week of May. We will inform you accordingly thanks.