module Realization.Nvidia.SM86.ExactCrossEntropyBackwardSM86 import Accelerator.SM86.Control import Accelerator.SM86.Immediate import Accelerator.SM86.Instruction import Accelerator.SM86.InstructionEncoding import Accelerator.SM86.NumericSemantics import Accelerator.SM86.Program import Accelerator.SM86.Types import Data.SHA256Digest import Realization.Nvidia.SM86.ExactCrossEntropySM86 import Std.Natural -- Exact full-vocabulary logit gradient for coppelius. The preceding exact -- forward pass supplies loss[r] = logsumexp(logits[r]) - correct[r], so this -- kernel reconstructs logsumexp as loss + correct and writes -- (exp(logit - logsumexp) - one_hot(target)) / rows. Grid Y selects one of 48 -- vocabulary tiles, avoiding a source-level 48-way instruction expansion. family ExactCrossEntropyBackwardSM86FailureCode : Type 0 constructor ExactCrossEntropyBackwardInstructionCountMismatch constructor ExactCrossEntropyBackwardEncodedByteCountMismatch constructor ExactCrossEntropyBackwardEncodingFailed constructor ExactCrossEntropyBackwardIdentityFailed constructor ExactCrossEntropyBackwardIdentityLengthInvalid end-family family ExactCrossEntropyBackwardSM86ABI : Type 0 constructor ExactCrossEntropyBackwardSM86ABIValue field unrestricted exactCrossEntropyBackwardABIGradient : Nat field unrestricted exactCrossEntropyBackwardABILogits : Nat field unrestricted exactCrossEntropyBackwardABILoss : Nat field unrestricted exactCrossEntropyBackwardABICorrectLogit : Nat field unrestricted exactCrossEntropyBackwardABITarget : Nat field unrestricted exactCrossEntropyBackwardABILog2E : Nat field unrestricted exactCrossEntropyBackwardABIInverseRows : Nat end-family family ExactCrossEntropyBackwardSM86Extents : Type 0 constructor ExactCrossEntropyBackwardSM86ExtentsValue field unrestricted exactCrossEntropyBackwardExtentRows : Nat field unrestricted exactCrossEntropyBackwardExtentVocabulary : Nat field unrestricted exactCrossEntropyBackwardExtentLogitsRead : Nat field unrestricted exactCrossEntropyBackwardExtentGradientWrite : Nat field unrestricted exactCrossEntropyBackwardExtentLossRead : Nat field unrestricted exactCrossEntropyBackwardExtentCorrectLogitRead : Nat field unrestricted exactCrossEntropyBackwardExtentTargetRead : Nat end-family family ExactCrossEntropyBackwardSM86Manifest : Type 0 constructor ExactCrossEntropyBackwardSM86ManifestValue field unrestricted exactCrossEntropyBackwardManifestExpectedInstructions : Nat field unrestricted exactCrossEntropyBackwardManifestExpectedEncodedBytes : Nat field unrestricted exactCrossEntropyBackwardManifestRegisters : Nat field unrestricted exactCrossEntropyBackwardManifestSharedBytes : Nat field unrestricted exactCrossEntropyBackwardManifestGridX : Nat field unrestricted exactCrossEntropyBackwardManifestGridY : Nat field unrestricted exactCrossEntropyBackwardManifestBlockX : Nat field unrestricted exactCrossEntropyBackwardManifestABI : (family ExactCrossEntropyBackwardSM86ABI) field unrestricted exactCrossEntropyBackwardManifestExtents : (family ExactCrossEntropyBackwardSM86Extents) field unrestricted exactCrossEntropyBackwardManifestHostFallbackOperations : Nat end-family family ExactCrossEntropyBackwardSM86Telemetry : Type 0 constructor ExactCrossEntropyBackwardSM86TelemetryValue field unrestricted exactCrossEntropyBackwardTelemetryManifest : (family ExactCrossEntropyBackwardSM86Manifest) field unrestricted exactCrossEntropyBackwardTelemetryObservedInstructions : Nat field unrestricted exactCrossEntropyBackwardTelemetryObservedEncodedBytes : Nat end-family family ExactCrossEntropyBackwardSM86BuildResult : Type 0 constructor ExactCrossEntropyBackwardSM86BuildSucceeded field unrestricted exactCrossEntropyBackwardEncodedBytes : Bytes field unrestricted exactCrossEntropyBackwardImageIdentity : Bytes field unrestricted exactCrossEntropyBackwardProgramEncodingTelemetry : (family SM86ProgramEncodingTelemetry) field unrestricted exactCrossEntropyBackwardIdentityTelemetry : (family SHA256DigestTelemetry) field unrestricted exactCrossEntropyBackwardBuildTelemetry : (family ExactCrossEntropyBackwardSM86Telemetry) constructor ExactCrossEntropyBackwardSM86ContractFailed field unrestricted exactCrossEntropyBackwardContractFailure : (family ExactCrossEntropyBackwardSM86FailureCode) field unrestricted exactCrossEntropyBackwardContractFailureTelemetry : (family ExactCrossEntropyBackwardSM86Telemetry) constructor ExactCrossEntropyBackwardSM86ImageEncodingFailed field unrestricted exactCrossEntropyBackwardEncodingFailure : (family ExactCrossEntropyBackwardSM86FailureCode) field unrestricted exactCrossEntropyBackwardFailedEncoding : (family SM86ProgramEncodingResult) field unrestricted exactCrossEntropyBackwardEncodingFailureTelemetry : (family ExactCrossEntropyBackwardSM86Telemetry) constructor ExactCrossEntropyBackwardSM86ImageIdentityFailed field unrestricted exactCrossEntropyBackwardIdentityFailure : (family ExactCrossEntropyBackwardSM86FailureCode) field unrestricted exactCrossEntropyBackwardFailedIdentity : (family SHA256HexResult) field unrestricted exactCrossEntropyBackwardIdentityFailureTelemetry : (family ExactCrossEntropyBackwardSM86Telemetry) end-family def exactCrossEntropyBackwardR0 = (sm86Register (byte 0)) def exactCrossEntropyBackwardR1 = (sm86Register (byte 1)) def exactCrossEntropyBackwardR2 = (sm86Register (byte 2)) def exactCrossEntropyBackwardR3 = (sm86Register (byte 3)) def exactCrossEntropyBackwardR4 = (sm86Register (byte 4)) def exactCrossEntropyBackwardR5 = (sm86Register (byte 5)) def exactCrossEntropyBackwardR6 = (sm86Register (byte 6)) def exactCrossEntropyBackwardR7 = (sm86Register (byte 7)) def exactCrossEntropyBackwardR8 = (sm86Register (byte 8)) def exactCrossEntropyBackwardR9 = (sm86Register (byte 9)) def exactCrossEntropyBackwardR10 = (sm86Register (byte 10)) def exactCrossEntropyBackwardR11 = (sm86Register (byte 11)) def exactCrossEntropyBackwardR12 = (sm86Register (byte 12)) def exactCrossEntropyBackwardR13 = (sm86Register (byte 13)) def exactCrossEntropyBackwardR14 = (sm86Register (byte 14)) def exactCrossEntropyBackwardR15 = (sm86Register (byte 15)) def exactCrossEntropyBackwardR16 = (sm86Register (byte 16)) def exactCrossEntropyBackwardR17 = (sm86Register (byte 17)) def exactCrossEntropyBackwardR18 = (sm86Register (byte 18)) def exactCrossEntropyBackwardR19 = (sm86Register (byte 19)) def exactCrossEntropyBackwardR20 = (sm86Register (byte 20)) def exactCrossEntropyBackwardR21 = (sm86Register (byte 21)) def exactCrossEntropyBackwardR22 = (sm86Register (byte 22)) def exactCrossEntropyBackwardR23 = (sm86Register (byte 23)) def exactCrossEntropyBackwardR24 = (sm86Register (byte 24)) def exactCrossEntropyBackwardR25 = (sm86Register (byte 25)) def exactCrossEntropyBackwardP0 : (family SM86Predicate) = (constructor SM86Predicate SM86Predicate0) def exactCrossEntropyBackwardGradientArgument : Nat = 0 def exactCrossEntropyBackwardLogitsArgument : Nat = 1 def exactCrossEntropyBackwardLossRowsArgument : Nat = 2 def exactCrossEntropyBackwardCorrectLogitArgument : Nat = 3 def exactCrossEntropyBackwardTargetsArgument : Nat = 4 def exactCrossEntropyBackwardLog2EArgument : Nat = 6 def exactCrossEntropyBackwardInverseRowsArgument : Nat = 7 def exactCrossEntropyBackwardU0 = sm86Unsigned32Zero def exactCrossEntropyBackwardU4 = (sm86Unsigned32 (byte 4) (byte 0) (byte 0) (byte 0)) def exactCrossEntropyBackwardU256 = (sm86Unsigned32 (byte 0) (byte 1) (byte 0) (byte 0)) def exactCrossEntropyBackwardU12288 = (sm86Unsigned32 (byte 0) (byte 48) (byte 0) (byte 0)) def exactCrossEntropyBackwardOffset160 = (sm86Unsigned32 (byte 96) (byte 1) (byte 0) (byte 0)) def exactCrossEntropyBackwardOffset168 = (sm86Unsigned32 (byte 104) (byte 1) (byte 0) (byte 0)) def exactCrossEntropyBackwardOffset170 = (sm86Unsigned32 (byte 112) (byte 1) (byte 0) (byte 0)) def exactCrossEntropyBackwardOffset178 = (sm86Unsigned32 (byte 120) (byte 1) (byte 0) (byte 0)) def exactCrossEntropyBackwardOffset180 = (sm86Unsigned32 (byte 128) (byte 1) (byte 0) (byte 0)) def exactCrossEntropyBackwardOffset190 = (sm86Unsigned32 (byte 144) (byte 1) (byte 0) (byte 0)) def exactCrossEntropyBackwardOffset198 = (sm86Unsigned32 (byte 152) (byte 1) (byte 0) (byte 0)) def exactCrossEntropyBackwardNext = (lambda unrestricted body : (family SM86InstructionBody) . (lambda unrestricted tail : (family SM86Program) . (constructor SM86Program SM86ProgramNext (sm86Instruction body) tail))) def exactCrossEntropyBackwardGuardedNext = (lambda unrestricted instruction : (family SM86Instruction) . (lambda unrestricted tail : (family SM86Program) . (constructor SM86Program SM86ProgramNext instruction tail))) def exactCrossEntropyBackwardEnd : (family SM86Program) = (constructor SM86Program SM86ProgramEnd) def exactCrossEntropyBackwardProgramForUnchecked = (lambda unrestricted vocabulary : Nat . (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86SpecialToRegister exactCrossEntropyBackwardR0 (constructor SM86SpecialRegister SM86ThreadIdX) exactCrossEntropyRowsSet0) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86SpecialToRegister exactCrossEntropyBackwardR1 (constructor SM86SpecialRegister SM86CooperativeThreadArrayIdX) exactCrossEntropyRowsSet0) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86SpecialToRegister exactCrossEntropyBackwardR2 (constructor SM86SpecialRegister SM86CooperativeThreadArrayIdY) exactCrossEntropyRowsSet0) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86IntegerMultiplyAddImmediate exactCrossEntropyBackwardR3 exactCrossEntropyBackwardR2 exactCrossEntropyBackwardU256 exactCrossEntropyBackwardR0 exactCrossEntropyRowsWait0) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86MoveImmediate exactCrossEntropyBackwardR5 exactCrossEntropyBackwardU4 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86IntegerMultiplyAddImmediate exactCrossEntropyBackwardR4 exactCrossEntropyBackwardR1 (sm86Unsigned32FromNaturalTruncated vocabulary) exactCrossEntropyBackwardR3 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86IntegerMultiplyAddWideConstant exactCrossEntropyBackwardR6 exactCrossEntropyBackwardR4 exactCrossEntropyBackwardR5 (byte 0) exactCrossEntropyBackwardOffset168 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86IntegerMultiplyAddWideConstant exactCrossEntropyBackwardR8 exactCrossEntropyBackwardR4 exactCrossEntropyBackwardR5 (byte 0) exactCrossEntropyBackwardOffset160 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86IntegerMultiplyAddWideConstant exactCrossEntropyBackwardR10 exactCrossEntropyBackwardR1 exactCrossEntropyBackwardR5 (byte 0) exactCrossEntropyBackwardOffset170 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86IntegerMultiplyAddWideConstant exactCrossEntropyBackwardR12 exactCrossEntropyBackwardR1 exactCrossEntropyBackwardR5 (byte 0) exactCrossEntropyBackwardOffset178 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86IntegerMultiplyAddWideConstant exactCrossEntropyBackwardR14 exactCrossEntropyBackwardR1 exactCrossEntropyBackwardR5 (byte 0) exactCrossEntropyBackwardOffset180 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86LoadGlobal exactCrossEntropyBackwardR16 exactCrossEntropyBackwardR10 exactCrossEntropyBackwardU0 exactCrossEntropyRowsSet0) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86LoadGlobal exactCrossEntropyBackwardR17 exactCrossEntropyBackwardR12 exactCrossEntropyBackwardU0 exactCrossEntropyRowsSet1) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86LoadGlobal exactCrossEntropyBackwardR21 exactCrossEntropyBackwardR14 exactCrossEntropyBackwardU0 exactCrossEntropyRowsSet2) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86IntegerAddThreeImmediate exactCrossEntropyBackwardR21 exactCrossEntropyBackwardR21 exactCrossEntropyBackwardU0 exactCrossEntropyRowsWait2) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86IntegerAddThreeImmediate exactCrossEntropyBackwardR17 exactCrossEntropyBackwardR17 exactCrossEntropyBackwardU0 exactCrossEntropyRowsWait1) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86FloatAdd exactCrossEntropyBackwardR18 exactCrossEntropyBackwardR16 exactCrossEntropyBackwardR17 exactCrossEntropyRowsWait0) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86FloatNegate exactCrossEntropyBackwardR19 exactCrossEntropyBackwardR18 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86MoveConstant exactCrossEntropyBackwardR20 (byte 0) exactCrossEntropyBackwardOffset190 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86MoveConstant exactCrossEntropyBackwardR22 (byte 0) exactCrossEntropyBackwardOffset198 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86FloatNegate exactCrossEntropyBackwardR23 exactCrossEntropyBackwardR22 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86LoadGlobal exactCrossEntropyBackwardR24 exactCrossEntropyBackwardR6 exactCrossEntropyBackwardU0 exactCrossEntropyRowsSet1) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86FloatAdd exactCrossEntropyBackwardR24 exactCrossEntropyBackwardR24 exactCrossEntropyBackwardR19 exactCrossEntropyRowsWait1) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86FloatMultiply exactCrossEntropyBackwardR24 exactCrossEntropyBackwardR24 exactCrossEntropyBackwardR20 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86MultiFunctionUnitApproximation exactCrossEntropyBackwardR24 exactCrossEntropyBackwardR24 (constructor SM86MultiFunction SM86ExponentialBase2) exactCrossEntropyRowsSet3) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86FloatMultiply exactCrossEntropyBackwardR24 exactCrossEntropyBackwardR24 exactCrossEntropyBackwardR22 exactCrossEntropyRowsWait3) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86LogicThreeInputTruthTable exactCrossEntropyBackwardR25 exactCrossEntropyBackwardR3 exactCrossEntropyBackwardR21 (byte 60) sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86PredicateGreaterThanImmediate exactCrossEntropyBackwardP0 exactCrossEntropyBackwardR25 exactCrossEntropyBackwardU0 sm86SafeControl) (exactCrossEntropyBackwardGuardedNext (sm86NegatedPredicatedInstruction exactCrossEntropyBackwardP0 (constructor SM86InstructionBody SM86FloatAdd exactCrossEntropyBackwardR24 exactCrossEntropyBackwardR24 exactCrossEntropyBackwardR23 sm86SafeControl)) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86StoreGlobal exactCrossEntropyBackwardR8 exactCrossEntropyBackwardR24 exactCrossEntropyBackwardU0 sm86SafeControl) (exactCrossEntropyBackwardNext (constructor SM86InstructionBody SM86Exit sm86SafeControl) exactCrossEntropyBackwardEnd)))))))))))))))))))))))))))))))) def exactCrossEntropyBackwardProgramFor = (lambda unrestricted rows : Nat . (lambda unrestricted vocabulary : Nat . (lambda erased admitted : (equal Nat (exactCrossEntropyRowsShapeAdmitted rows vocabulary) 1) . (exactCrossEntropyBackwardProgramForUnchecked vocabulary)))) def exactCrossEntropyBackwardProgram : (family SM86Program) = (exactCrossEntropyBackwardProgramForUnchecked 12288) def exactCrossEntropyBackwardABI = (constructor ExactCrossEntropyBackwardSM86ABI ExactCrossEntropyBackwardSM86ABIValue 352 360 368 376 384 400 408) def exactCrossEntropyBackwardElements = (naturalMultiply 1024 12288) def exactCrossEntropyBackwardExtents = (constructor ExactCrossEntropyBackwardSM86Extents ExactCrossEntropyBackwardSM86ExtentsValue 1024 12288 exactCrossEntropyBackwardElements exactCrossEntropyBackwardElements 1024 1024 1024) def exactCrossEntropyBackwardManifest = (constructor ExactCrossEntropyBackwardSM86Manifest ExactCrossEntropyBackwardSM86ManifestValue 31 496 32 zero 1024 48 256 exactCrossEntropyBackwardABI exactCrossEntropyBackwardExtents zero) def exactCrossEntropyBackwardManifestInstructions = (lambda unrestricted manifest : (family ExactCrossEntropyBackwardSM86Manifest) . (eliminate ExactCrossEntropyBackwardSM86Manifest (lambda unrestricted current : (family ExactCrossEntropyBackwardSM86Manifest) . Nat) manifest (branch ExactCrossEntropyBackwardSM86ManifestValue instructions bytes registers shared gridX gridY blockX abi extents hostFallback . instructions))) def exactCrossEntropyBackwardManifestBytes = (lambda unrestricted manifest : (family ExactCrossEntropyBackwardSM86Manifest) . (eliminate ExactCrossEntropyBackwardSM86Manifest (lambda unrestricted current : (family ExactCrossEntropyBackwardSM86Manifest) . Nat) manifest (branch ExactCrossEntropyBackwardSM86ManifestValue instructions bytes registers shared gridX gridY blockX abi extents hostFallback . bytes))) def exactCrossEntropyBackwardTelemetryFor = (lambda unrestricted instructions : Nat . (lambda unrestricted bytes : Nat . (constructor ExactCrossEntropyBackwardSM86Telemetry ExactCrossEntropyBackwardSM86TelemetryValue exactCrossEntropyBackwardManifest instructions bytes))) def exactCrossEntropyBackwardBuild = (app (lambda unrestricted observedInstructions : Nat . (nat-eliminate (lambda unrestricted countMatched : Nat . (family ExactCrossEntropyBackwardSM86BuildResult)) (constructor ExactCrossEntropyBackwardSM86BuildResult ExactCrossEntropyBackwardSM86ContractFailed (constructor ExactCrossEntropyBackwardSM86FailureCode ExactCrossEntropyBackwardInstructionCountMismatch) (exactCrossEntropyBackwardTelemetryFor observedInstructions zero)) (lambda unrestricted countPredecessor : Nat . (lambda unrestricted countInduction : (family ExactCrossEntropyBackwardSM86BuildResult) . (app (lambda unrestricted encoding : (family SM86ProgramEncodingResult) . (eliminate SM86ProgramEncodingResult (lambda unrestricted current : (family SM86ProgramEncodingResult) . (family ExactCrossEntropyBackwardSM86BuildResult)) encoding (branch SM86ProgramEncodingSucceeded bytes encodingTelemetry . (app (lambda unrestricted telemetry : (family ExactCrossEntropyBackwardSM86Telemetry) . (nat-eliminate (lambda unrestricted bytesMatched : Nat . (family ExactCrossEntropyBackwardSM86BuildResult)) (constructor ExactCrossEntropyBackwardSM86BuildResult ExactCrossEntropyBackwardSM86ContractFailed (constructor ExactCrossEntropyBackwardSM86FailureCode ExactCrossEntropyBackwardEncodedByteCountMismatch) telemetry) (lambda unrestricted bytesPredecessor : Nat . (lambda unrestricted bytesInduction : (family ExactCrossEntropyBackwardSM86BuildResult) . (app (lambda unrestricted identityResult : (family SHA256HexResult) . (eliminate SHA256HexResult (lambda unrestricted current : (family SHA256HexResult) . (family ExactCrossEntropyBackwardSM86BuildResult)) identityResult (branch SHA256HexSucceeded identity identityTelemetry . (nat-eliminate (lambda unrestricted identityLengthMatched : Nat . (family ExactCrossEntropyBackwardSM86BuildResult)) (constructor ExactCrossEntropyBackwardSM86BuildResult ExactCrossEntropyBackwardSM86ImageIdentityFailed (constructor ExactCrossEntropyBackwardSM86FailureCode ExactCrossEntropyBackwardIdentityLengthInvalid) identityResult telemetry) (lambda unrestricted identityLengthPredecessor : Nat . (lambda unrestricted identityLengthInduction : (family ExactCrossEntropyBackwardSM86BuildResult) . (constructor ExactCrossEntropyBackwardSM86BuildResult ExactCrossEntropyBackwardSM86BuildSucceeded bytes identity encodingTelemetry identityTelemetry telemetry))) (naturalEqual (bytes-length identity) 64))) (branch SHA256HexFailed error ordinal identityTelemetry . (constructor ExactCrossEntropyBackwardSM86BuildResult ExactCrossEntropyBackwardSM86ImageIdentityFailed (constructor ExactCrossEntropyBackwardSM86FailureCode ExactCrossEntropyBackwardIdentityFailed) identityResult telemetry)))) (sha256Hex bytes)))) (naturalEqual (bytes-length bytes) (exactCrossEntropyBackwardManifestBytes exactCrossEntropyBackwardManifest)))) (exactCrossEntropyBackwardTelemetryFor observedInstructions (bytes-length bytes)))) (branch SM86ProgramEncodingFailed instructionIndex failure encodingTelemetry . (constructor ExactCrossEntropyBackwardSM86BuildResult ExactCrossEntropyBackwardSM86ImageEncodingFailed (constructor ExactCrossEntropyBackwardSM86FailureCode ExactCrossEntropyBackwardEncodingFailed) encoding (exactCrossEntropyBackwardTelemetryFor observedInstructions zero))))) (sm86EncodeProgram exactCrossEntropyBackwardProgram)))) (naturalEqual observedInstructions (exactCrossEntropyBackwardManifestInstructions exactCrossEntropyBackwardManifest)))) (sm86ProgramCount exactCrossEntropyBackwardProgram))