@@ -1460,28 +1460,34 @@ def create_value_var(
1460
1460
1461
1461
"""
1462
1462
if value_var is None :
1463
- value_var = rv_var .type ()
1464
- value_var .name = rv_var .name
1465
-
1466
- if aesara .config .compute_test_value != "off" :
1467
- value_var .tag .test_value = rv_var .tag .test_value
1468
-
1469
- _add_future_warning_tag (value_var )
1470
- rv_var .tag .value_var = value_var
1463
+ untransformed_value_var = rv_var .type ()
1464
+ untransformed_value_var .name = rv_var .name
1465
+ else :
1466
+ untransformed_value_var = value_var
1471
1467
1472
1468
# Make the value variable a transformed value variable,
1473
1469
# if there's an applicable transform
1474
1470
if transform is UNSET and rv_var .owner :
1475
1471
transform = _default_transform (rv_var .owner .op , rv_var )
1476
1472
1477
1473
if transform is not None and transform is not UNSET :
1474
+ value_var = transform .forward (untransformed_value_var , * rv_var .owner .inputs ).type ()
1475
+ value_var .name = f"{ untransformed_value_var .name } _{ transform .name } __"
1478
1476
value_var .tag .transform = transform
1479
- value_var .name = f"{ value_var .name } _{ transform .name } __"
1480
1477
if aesara .config .compute_test_value != "off" :
1481
1478
value_var .tag .test_value = transform .forward (
1482
1479
value_var , * rv_var .owner .inputs
1483
1480
).tag .test_value
1484
1481
self .named_vars [value_var .name ] = value_var
1482
+ else :
1483
+ value_var = untransformed_value_var
1484
+
1485
+ if aesara .config .compute_test_value != "off" :
1486
+ value_var .tag .test_value = rv_var .tag .test_value
1487
+
1488
+ _add_future_warning_tag (value_var )
1489
+ rv_var .tag .value_var = value_var
1490
+
1485
1491
self .rvs_to_transforms [rv_var ] = transform
1486
1492
self .rvs_to_values [rv_var ] = value_var
1487
1493
self .values_to_rvs [value_var ] = rv_var
0 commit comments